繁体   English   中英

如何在Android上的TextInput react-native中防止复制到剪贴板?

[英]How to prevent copy to clipboard in TextInput react-native on Android?

我想阻止用户在TextInput中复制内容,但它仅适用于iOS,但不适用于Android。 我如何在Android中执行此操作?

[更新]:正如链接 @ patel-dhara在下面给出的那样,我已经阅读了有关contextMenuHidden属性的提交,发现只在Android上处理onLongClick事件。 因此,仍然可以通过双击它来copy to clipboard TextInput copy to clipboard

这是我的代码:

<TextInput
  style={styles.input}
  placeholder="Password"
  placeholderTextColor="rgba(255, 255, 255, 0.7)"
  underlineColorAndroid="transparent"
  secureTextEntry={isHidePass}
  returnKeyType="go"
  autoCapitalize="none"
  onChangeText={this.handleTextChange}
  onSubmitEditing={this.handleLogin}
  ref={this.passwordRef}
  contextMenuHidden
  onBlur={() => Clipboard.setString('')}
  onFocus={() => Clipboard.setString('')}
  onSelectionChange={() => Clipboard.setString('')}
/>

您可以使用TextInput的contextMenuHidden属性。 它适用于平台Android和iOS。

<TextInput contextMenuHidden={true} />

但是,它可能在react-native版本0.55之后得到支持。 了解更多信息链接 提交链接: 链接

尝试这个:

<TextInput caretHidden={true} selectTextOnFocus={false} />

用这个:

<View pointerEvents="none">
  <TextInput ... />
</View>

用于查看的结帐指针事件: https//facebook.github.io/react-native/docs/view#pointerevents

另一个选项:尝试清除剪贴板

<TextInput onFocus={() => Clipboard.setString('')} onSelectionChange={() => Clipboard.setString('')}/>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM