禁用 React Native 文本输入,但仍然可以按回车键/退格键
Posted
技术标签:
【中文标题】禁用 React Native 文本输入,但仍然可以按回车键/退格键【英文标题】:Disable React Native textinput but still can press enter / backspace key 【发布时间】:2021-10-26 04:05:47 【问题描述】:如题,这可能吗?
我知道可以通过设置禁用 React Native 文本输入
editable=false
但我需要让其他键(如 Enter 和 Backspace)同时工作。但我认为这不会起作用,因为将 editable
设置为 false 会有效地使输入始终模糊,因此无法使 onKeyPress
和 onSubmitEditing
等属性起作用。
有解决办法吗?
【问题讨论】:
【参考方案1】:你可以应用一个技巧。你需要在 value 属性中给它一个常量值。
import React from "react";
import SafeAreaView, StyleSheet, TextInput from "react-native";
const UselessTextInput = () =>
const [text, onChangeText] = React.useState("Useless Text");
return (
<SafeAreaView>
<TextInput
style=styles.input
onChangeText=onChangeText
value=""
/>
</SafeAreaView>
);
;
const styles = StyleSheet.create(
input:
height: 40,
margin: 12,
borderWidth: 1,
padding: 10,
,
);
export default UselessTextInput;
【讨论】:
不工作..我将值设置为空格('')但它仍然不起作用。在我将可编辑设置为 false 后,我尝试按 Enter 但没有任何反应。 您必须删除可编辑属性或将其设置为true以上是关于禁用 React Native 文本输入,但仍然可以按回车键/退格键的主要内容,如果未能解决你的问题,请参考以下文章
如何在 WebView [React-Native] 中禁用用户文本选择
如何在 React Native 中强制禁用 iOS 暗模式
如何在WebView中禁用用户文本选择[React-Native]