如何在反应本机的条件渲染中更改按钮的不透明度

How to change Opacity of button in conditional rendering in react native

我是 React Native 的新手。我创建了一个表格。我在其中根据服务器响应呈现一些按钮。现在我想将按钮的不透明度设置为 50%。我希望该按钮现在看起来像已禁用。那么是否有可能,如果是,那么请帮忙。谢谢。我想在我的第一行代码中设置不透明度

这是我的代码

 {data.bank_account_details_data[0] != null && ( 

              <TouchableOpacity>
                <Card center middle shadow style={styles.category} >
                  OTHER INFORMATION
                  </Text>
                </Card>
              </TouchableOpacity>

              )}

你可以使用这样的东西

<TouchableOpacity 
   // opacity value ranges from 0 to 1
    activeOpacity={0.9}  //opacity for on touch behaviour
    style={{opacity:0.9}} // opacity for view behaviour
    onPress={()=>{
      console.log("i am here")
    }}>
      <Text style={{color:"#FFF"}}>This is opacity check</Text>
    </TouchableOpacity>

除了不透明度的静态值之外,您还可以使用来自后端的状态、道具或值作为变量

您可以根据 style 属性中的条件使用三元表达式(如第一行)设置 TouchableOpacity 的不透明度。

简化示例:

export default function App() {
  const [hasOpacity, setHasOpacity] = React.useState(false)

  return (
    <View style={styles.container}>
      <TouchableOpacity onPress={() => {
        setHasOpacity(!hasOpacity)
      }} 
      activeOpacity={0.2}
      style={{opacity: hasOpacity ? 0.5 : 1.0}}
      >
      <Text>Test</Text></TouchableOpacity>
    </View>
  );
}

https://snack.expo.io/a1Y-TU4XB

在您的示例中,它可能如下所示:

<TouchableOpacity 
      activeOpacity={0.2}
      style={{opacity: data.bank_account_details_data[0] != null ? 0.5 : 1.0}}
      >