Javascript 以本机基本形式在标签内反应本机设置响应图标

Javascript 以本机基本形式在标签内反应本机设置响应图标,javascript,reactjs,react-native,react-native-android,native-base,Javascript,Reactjs,React Native,React Native Android,Native Base,嗨,我需要创建的形式,有密码输入屏蔽。因此,我创建了具有label+图标的floatinglabel。单击图标时,它将屏蔽/取消屏蔽密码。我已成功创建标签+图标,但我的问题是图标没有响应,因为标签没有按钮/可触摸。如果我用按钮包装图标,它会在文本中显示错误嵌套视图。此外,我不能使用标签外的图标,因为它用于验证图标(X/O) 如何在标签标签内创建响应图标(当用户触摸时)?或者是否有其他方法,例如在输入中创建多个图标 这是我的密码: <Label style={{top: 16}}>

嗨,我需要创建的形式,有密码输入屏蔽。因此,我创建了具有label+图标的floatinglabel。单击图标时,它将屏蔽/取消屏蔽密码。我已成功创建标签+图标,但我的问题是图标没有响应,因为标签没有按钮/可触摸。如果我用按钮包装图标,它会在文本中显示错误嵌套视图。此外,我不能使用标签外的图标,因为它用于验证图标(X/O)

如何在标签标签内创建响应图标(当用户触摸时)?或者是否有其他方法,例如在输入中创建多个图标

这是我的密码:

<Label style={{top: 16}}>
  Password{" "}
  {password_mask && (
    /* If i wrap this icon with button it will gives a error */
    <Icon
      name="ios-eye"
      onPress={() => this.setState({ password_mask: false })}
      style={{top: 16}}
    />
  )}
  {!password_mask && (
    <Icon
      name="ios-eye-off"
      onPress={() => this.setState({ password_mask: true })}
      style={{paddingTop: 5}}
    />
  )}
</Label>

密码{“”}
{密码_掩码&&(
/*如果我用按钮包装这个图标,它将给出一个错误*/
this.setState({password\u mask:false})
style={{top:16}}
/>
)}
{!密码\u掩码&&(
this.setState({password\u mask:true})
style={{paddingTop:5}}
/>
)}
谢谢…

试试看。可以在其中渲染图标。你也可以这样做一些优化

 <Label style={{ top: 16 }}>
Password{" "}
<TouchableOpacity
    onPress={() =>
        this.setState({ password_mask: !this.state.password_mask })
    }
>
    <Icon
        name={this.state.password_mask ? "ios-eye" : "ios-eye-off"}
        style={this.state.password_mask ? { top: 16 } : { paddingTop: 5 }}
    />
</TouchableOpacity>
</Label>;

密码{“”}
this.setState({password\u mask:!this.state.password\u mask})
}
>
;

仍然收到“Android不支持文本中的视图嵌套”错误我尝试将touchableopacity更改为touchablenativefeedback,但收到错误“尝试向不存在的视图发送带有标记88的命令”单击图标时。您必须将TouchableOpacity移到TextInput之外。我不希望我的标签也可触摸,我只希望图标可触摸