React Native - Düğmeler
Bu bölümde size react Native'deki dokunulabilir bileşenleri göstereceğiz. Bunlara 'dokunulabilir' diyoruz çünkü yerleşik animasyonlar sunuyorlar veonPress dokunma olayını işlemek için destek.
Facebook şunları sunar: Buttongenel bir düğme olarak kullanılabilen bileşen. Aynısını anlamak için aşağıdaki örneği düşünün.
App.js
import React, { Component } from 'react'
import { Button } from 'react-native'
const App = () => {
const handlePress = () => false
return (
<Button
onPress = {handlePress}
title = "Red button!"
color = "red"
/>
)
}
export default App
Varsayılan ise Button bileşen ihtiyaçlarınızı karşılamıyorsa, bunun yerine aşağıdaki bileşenlerden birini kullanabilirsiniz.
Dokunulabilir Opaklık
Bu eleman, dokunulduğunda bir elemanın opaklığını değiştirecektir.
App.js
import React from 'react'
import { TouchableOpacity, StyleSheet, View, Text } from 'react-native'
const App = () => {
return (
<View style = {styles.container}>
<TouchableOpacity>
<Text style = {styles.text}>
Button
</Text>
</TouchableOpacity>
</View>
)
}
export default App
const styles = StyleSheet.create ({
container: {
alignItems: 'center',
},
text: {
borderWidth: 1,
padding: 25,
borderColor: 'black',
backgroundColor: 'red'
}
})
Dokunulabilir Vurgu
Bir kullanıcı öğeye bastığında, daha koyu hale gelecek ve temel renk görünecektir.
App.js
import React from 'react'
import { View, TouchableHighlight, Text, StyleSheet } from 'react-native'
const App = (props) => {
return (
<View style = {styles.container}>
<TouchableHighlight>
<Text style = {styles.text}>
Button
</Text>
</TouchableHighlight>
</View>
)
}
export default App
const styles = StyleSheet.create ({
container: {
alignItems: 'center',
},
text: {
borderWidth: 1,
padding: 25,
borderColor: 'black',
backgroundColor: 'red'
}
})
Dokunulabilir Yerel Geri Bildirim
Bu, öğeye basıldığında mürekkep animasyonunu simüle edecektir.
App.js
import React from 'react'
import { View, TouchableNativeFeedback, Text, StyleSheet } from 'react-native'
const Home = (props) => {
return (
<View style = {styles.container}>
<TouchableNativeFeedback>
<Text style = {styles.text}>
Button
</Text>
</TouchableNativeFeedback>
</View>
)
}
export default Home
const styles = StyleSheet.create ({
container: {
alignItems: 'center',
},
text: {
borderWidth: 1,
padding: 25,
borderColor: 'black',
backgroundColor: 'red'
}
})
Geribildirim Olmadan Dokunulabilir
Bu, dokunma olayını herhangi bir animasyon olmadan işlemek istediğinizde kullanılmalıdır. Genellikle bu bileşen çok fazla kullanılmaz.
<TouchableWithoutFeedback>
<Text>
Button
</Text>
</TouchableWithoutFeedback>