this.refs.FieldName.focus() 不是 React Native 中的函数



我正在使用自定义键盘。因为我使用CustomTextInput代替TextInput。一切正常,但我想将输入字段集中在函数中。

<CustomTextInput customKeyboardType="hello" 
onFocus={() => this.onFocus('fieldname')} 
selectTextOnFocus={ true } 
ref="TextInput" 
underlineColorAndroid = 'transparent' 
onChangeText={(value) => this.setState({fieldname:this.onChange(value)})}
/>

在函数中,如下所示:-

function () {
Keyboard.dismiss();  
this.refs.TextInput.focus();
}

但是我收到一个错误:- this.refs.TextInput.focus不是一个函数。 基本上我的 focus(( 函数不起作用。

请帮忙!

我试过this.refs['TextInput'].focus()它对我有用。你可以为TextinputonFocus编写一个函数,在这个函数中,忽略默认键盘,午餐你的自定义键盘,然后再次专注于你的TextInput。我希望它会有所帮助。

这是我的代码:

<TextInput
style={{ height: 40, width: 200 }}
ref="TextInput"
/>
<TouchableOpacity
onPress={() => { (this.refs['TextInput'] as any).focus() }}>
<Text>Press to focus</Text>
</TouchableOpacity>

相关内容

  • 没有找到相关文章

最新更新