reactjs - React Native:如何使用 TouchableOpacity onPress 更改 BackgroundColor
问题描述
当我按下时,我一直在改变背景颜色,它正在改变但不是整个屏幕,它有它的限制,有人可以帮我吗?当我按下时,我一直在改变背景颜色,它正在改变但不是整个屏幕,它有它的限制,有人可以帮我吗?当我按下时,我一直在改变背景颜色,它正在改变但不是整个屏幕,它有它的限制,有人可以帮我吗?
这是我的代码,我什至使用了 flex: 1,我该如何解决这个问题,任何帮助)),:
export default Boom=()=>{
[color, setColor] = useState('white');
return (
<View style = {styles.container}>
<TouchableOpacity onPress = {()=> setColor('blue')} style= {{backgroundColor: color,}} >
<Text style={{
color: 'white',
padding: 16,
marginTop: 16,
borderColor: '#bbb',
borderWidth: 1,
borderStyle: 'dashed',
borderRadius: 10,
backgroundColor: 'blue' }}>Blue</Text>
</TouchableOpacity >
<TouchableOpacity onPress={() => setColor('red')} style={{ backgroundColor: color, }}>
<Text style={{
color: 'white',
padding: 16,
marginTop: 16,
borderColor: '#bbb',
borderWidth: 1,
borderStyle: 'dashed',
borderRadius: 10 ,
backgroundColor: 'red'}}>Red</Text>
</TouchableOpacity>
<TouchableOpacity onPress={() => setColor('black')} style={{ backgroundColor: color }}>
<Text style={{
color : 'white',
padding: 16,
marginTop: 16,
borderColor: '#bbb',
borderWidth: 1,
borderStyle: 'dashed',
borderRadius: 10 ,
backgroundColor : 'black' }} >Black</Text>
</TouchableOpacity>
</View>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',}
})
解决方案
<View style = {{
flex: 1,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: color
}} >
...
</View>
推荐阅读
- angular - 带有动态url的routerLinkActive不起作用Angular 9
- python - Python - 在变量中存储大数组
- python - 执行python文件的shell脚本
- java - 将 SOAP 服务从 websphere 迁移到 tomcat
- javascript - 如何通过单击具有相同类的 100 个框中的任何一个来打开模式?
- javascript - 在基于 laravel 的引导程序上通过 js 发送表单给我一个错误
- javascript - 使用选择值过滤 jQuery 数据表
- react-native - React Native CLI 项目构建问题,应用中心出现以下错误
- javascript - 将数据从 html 表单加载到实时数据库
- python - 如何将 JSON 对象展平为 pandas Dataframe 对象