- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
应该如何实现“X”来清除 native react 中的按钮,以便它适用于 Android 和 iOS。 iOS 有“clearButtonMode” enum('never', 'while-editing', 'unless-editing', 'always') 的文本输入选项。
为了使其跨平台,我们是否只需要添加清除按钮的 android 条件渲染?就像是:
{Platform.OS === 'android' && <ClearTextButton />}
似乎有点hacky,所以我想知道是否有更清洁的方法。
最佳答案
对于您的问题,您只需要创建一个简单的按钮来处理输入字段的清除功能,并将其放置在 TextInput 组件旁边即可获得 clearButtonMode
的效果。 .
一个天真的实现可能是这样的:
value
到这个状态。 this.state = {
textInput1Status: 'untouched',
textInput1Value: '',
};
onChange
支持你的 TextInput。 <TextInput
onChangeText={(text) => this.onTextInput1Change(text)}
value={this.state.textInput1Value}
/>
...
onTextInput1Change(text) {
this.setState({
textInput1Status: 'touched',
textInput1Value: text
});
}
<TouchableOpacity onPress={this.clearText}>
<Image
style={styles.button}
source={require('./myButton.png')}
/>
</TouchableOpacity>
...
clearText() {
this.setState({
textInput1Status: 'untouched',
textInput1Value: '',
});
}
renderClearButotn() {
if (this.state.textInput1Status == 'touched') {
return (
<TouchableOpacity onPress={this.clearText}>
<Image
style={styles.button}
source={require('./myButton.png')}
/>
</TouchableOpacity>
);
} else {
return '';
}
}
...
render() {
return (
<TextInput
onChangeText={(text) => this.onTextInput1Change(text)}
value={this.state.textInput1Value}
/>
{this.renderClearButton()}
);
}
关于react-native - 是否有用于带有 React Native 的 Android 跨平台 clearButtonMode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41793030/
我可以更改文本字段上 clearButtonMode 的颜色吗? theTextField.clearButtonMode = UITextFieldViewModeWhileEditing 显示一个
我有一个扩展的 UITextField(添加了一个 NSString 属性,inputType)来接收用户输入。当用户点击文本字段时,我使用一个选择器供用户选择输入。我还需要允许用户清除文本框,所以我
我希望 X 按钮仅在以下情况下显示 textField.clearButtonMode = .UnlessEditing 当用户按下 X 按钮时,textView 成为第一响应者,键盘弹出。 我该怎么
我正在创建一个 textField 并将其添加到这样的 View 中: UITextField *textField = [[UITextField alloc] initWithFrame:CGRe
是否可以在 Interface Builder 中为 UITextField 设置clearButtonMode?难道只有写代码才可以吗?我没有将其视为 UITextField 属性面板中的选项。 最
应该如何实现“X”来清除 native react 中的按钮,以便它适用于 Android 和 iOS。 iOS 有“clearButtonMode” enum('never', 'while-edi
我是一名优秀的程序员,十分优秀!