Aylık Arşivler: Kasım 2018

JSON.stringify Kullanımı

Nesneyi string ifadeye çevirmek için JSON.stringify kullanılabilir. Yalnız sonuçları “” işaretleri arasında veriyor. componentDidMount() { const user=firebase.auth().currentUser; this.setState({ eposta: JSON.stringify(user.email) }); } Ek bir bilgi öğrendim şuradan : https://twitter.com/rickhanlonii/status/1088180821658427393

Text strings must be rendered within a component.

Invariant Violation: Invariant Violation: Text strings must be rendered within a component. gibi bir hata veriyor ama hatanın tam yerini belirtmediğinde uğraştırıp duruyor 🙂 Fazladan kod yazımı sırasında yanlışlıkla bıraktığım birkaç karakter yüzünden bu uyarıyı veriyor. Basit bir hata ve tam yerini göstermemesi facia 🙂

React Native – ScrollView bileşenini kavramak

ScrollView içerisinde View çalışmamaktadır. Ekranın kaydırılarak kullanılmasını sağlamak için ScrollView bileşeni kullanılır. horizontal={true} özelliği ile yatayda kaydırma yaptırılabilir. Farklı Viewları kullanmak için yeni bileşen oluşturup, bir sayfada toplanarak kullanılabilir. <ScrollView> <Text style={{fontSize:96}}>The ScrollView works best to present a small amount of things of a limited size. All the elements and views of a ScrollView are>>>

React Native – Dokunulabilir bileşenleri kavramak

TouchableHighlight TouchableNativeFeedback TouchableOpacity TouchableWithoutFeedback bileşenleri ile dokunulabilir bileşenler tasarlayabiliriz. Uzun basma işlevini onLongPress özelliği ile kullanabiliriz. <TouchableHighlight onPress={this._onPressButton} underlayColor=”white”> <View style={styles.button}> <Text style={styles.buttonText}>TouchableHighlight</Text> </View> </TouchableHighlight> <TouchableOpacity onPress={this._onPressButton}> <View style={styles.button}> <Text style={styles.buttonText}>TouchableOpacity</Text> </View> </TouchableOpacity> <TouchableNativeFeedback onPress={this._onPressButton} background={Platform.OS === ‘android’ ? TouchableNativeFeedback.SelectableBackground() : ”}> <View style={styles.button}> <Text style={styles.buttonText}>TouchableNativeFeedback</Text> </View> </TouchableNativeFeedback> <TouchableWithoutFeedback onPress={this._onPressButton} > <View style={styles.button}> <Text style={styles.buttonText}>TouchableWithoutFeedback</Text>>>>

React Native – Button bileşenini kavramak

Button bileşeni ile hazır butonlar ekleyebiliriz. import {Button} from ‘react-native’; ile çağırdıktan sonra tıklandığı zaman yapacağı işlevi aşağıdaki şekilde yazabiliriz. _onPressButton() { Alert.alert(‘Hakkında!’) } aşağıdaki şekilde: <Button onPress={this._onPressButton} title=”Hakkında” color=”#841584″ accessibilityLabel=”Erişilebilirlik mesajı” /> <Button title=”Deaktif Düğme” disabled={true} /> butonlar kullanabiliriz.

React Native – TextInput, onChangeText, onSubmitEditing özelliklerini kavramak

React Native - TextInput, onChangeText, onSubmitEditing özelliklerini kavramak

Kullanıcıdan ad ve soyadını isteyip, onChangeText özelliği ile metin değiştikçe ekrana yazacak, onSubmitEditing özelliği ile enter’a veya onay tuşuna basınca ad girildi, soyad girildi şeklinde uyarı yazdıracağız. export default class App extends Component{ constructor(props) { super(props); this.state = {ad: ”, soyad:”, adgirildi: ‘Ad girilmedi’, soyadgirildi: ‘Soyadgirilmedi’}; } render() { return ( <View style={{alignItems:’center’}}> <TextInput style={{color:’red’,>>>

React Native – flexDirection, alignItems, justifyContent özelliklerini kavramak

flexDirection: row özelliğini aldığı zaman yan yana, column özelliğini aldığı zaman alt alta sıralama yapar. justifyContent flex-start: alanın başlangıcından itibaren yerleştirir flex-end: alanın sonundan itibaren yerleştirir center: ortalar space-around: etrafında boşluk bırakarak yerleştirir space-between: baştan ve sondan boşluk bırakmadan yayarak yerleştirir space-evenly: eşit mesafede boşluk bırakarak yerleştirir alignItems özelliği flexDirection’a bağlı olarak justifyContent ile rolleri>>>

React Native – width, height, flex özelliklerini kavramak

React Native’de sabit bir büyüklükte görünmesini istediğimiz nesnelerimize en ve boy vermek için width ve height kullanabiliriz. <View style={{width: 50, height: 50, backgroundColor: ‘powderblue’}} /> Değişen ekran tasarımlarına ayak uydurmak için flex ile tasarım yapmak daha cazip duruyor. flex:1, dersek ekranda bir tane bileşen olur ve ekranı tamamen kaplar. Aşağıdaki gibi bir kod kullanırsak: <View>>>

React Native – style özelliğini kavramak

React Native – style özelliğini kavramak

React Native’de büyün ana bileşenlere style özelliği ile stil bilgisi vererek dizayn yapabiliriz. Daha derli toplu olması için StyleSheet import edip, StyleSheet.create ile bir styles sabiti yaratıp, onu ilgili yerlerde kullanmak daha şık durabilir. Şöyle ki: const styles = StyleSheet.create({ bigblue: { color: ‘blue’, fontWeight: ‘bold’, fontSize: 30, }, red: { color: ‘red’, }, });>>>

React Native – state özelliğini kavramak

React Native – state özelliğini kavramak

props ile tanımladığımız değişkenler bileşenin ömrü boyunca sabit kalır demiştik, süreçte değişmesini istediğimiz parametreleri ise state ile kontrol ederiz. constructor yani kurucu/yapıcı metot içerisinde state ile tanımlanan değişken süreçte setState ile yeni değerler verilerek kullanılabilir. class YanSon extends Component { constructor(props) { super(props); this.state = { isShowingText: true }; setInterval(() => ( this.setState(previousState => (>>>