React Native Style
iki sorum olacak
Style tanımlarken buna direk tanımlama yapabılırmıyım style eklemeden
<Icon name="star-full" size={15} />
Icon:{
color:"black",
}
tarzınca
ikinci sorum ise
css de misal .alan.kutu tarzında tanımlama yapınca alan ıcındekı kutulara ıslem yapıyoruz
react ıle bu mumkunmu
alan kutu: {
padding: 0,
margin: 0,
},
Style tanımlarken buna direk tanımlama yapabilir miyim?
Evet, React Native'de bir component'e inline olarak stil verebilirsiniz.
<View style={{ width:200, height:200, backgroundColor:"red" }} />
CSS'te misal .alan.kutu
tarzında tanımlama yapınca alan içindeki kutulara işlem yapıyoruz. React ile bu mümkün mü?
Evet, React ve React Native'de bir component'e birkaç stil verebilirsiniz. style
prop'una obje değil objeler içeren bir dizi göndermeniz yeterli.
<View style={[{ width:200, height:200, backgroundColor:"red" }, {borderWidth:1, borderColor:"blue"}]} />
Ama siz mesela ekrandaki tüm View'lerde belli bir stil kullanılsın istiyorsanız bunun yolu yok. Yani var ama duruma göre kod kalabalığı yaratır. Mesela MyView adında bir component oluşturur ve ona belli bir stil verirsiniz. Böylece bu component'i kullandığınız her yerde aynı stil geçerli olur.
const RedView = (props) => <View style={{backgroundColor:"red"}}>{props.children}</View>;
const BlueView = (props) => <View style={{backgroundColor:"blue"}}>{props.children}</View>;
const Screen = () => {
return (
<View>
<RedView><Text>Kırmızı Arkaplanlı View</Text></RedView>
<RedView><Text>Kırmızı Arkaplanlı View</Text></RedView>
<BlueView><Text>Mavi Arkaplanlı View</Text></BlueView>
<View><Text>Normal View</Text></View>
</View>
);
}