激活和停用文本输入

问题描述 投票:0回答:1

StackOverflow 我正在尝试制作一个按钮来将布尔值从 true 更改为 false,反之亦然,以便更改 textInput 中的可编辑值。

这就是我到目前为止所取得的进展:

  const [change, setChange] = useState(true);
  const [text, setText] = useState("");

  const textEdit = () => {
    change === true ? setChange(false) : setChange(true);

  };

由于某种原因,在点击 TouchableOpacity 以下后,它不会改变状态,或者我的代码中一定存在问题,阻止 React 更改下面文本输入中的“更改”状态

<TextInput
      style={{ width: "100%", height: 100, backgroundColor: "gray" }}
      placeholder={"write something"}
      onChangeText={(text) => setText(text)}
      editable={change}
    >
    <Text>adderess</Text>
</TextInput>

<TouchableOpacity
      onPress={() => {
        textEdit;
      }}
    >
      <Text style={{ color: "blue" }}>Change</Text>
</TouchableOpacity>
reactjs react-native textinput react-native-textinput
1个回答
0
投票

因为你按下时不会调用函数

textEdit
。像这样更新:

onPress={() => {
  textEdit();
}}

或清洁工:

onPress={textEdit}
© www.soinside.com 2019 - 2024. All rights reserved.