当前位置: 首页 > 知识库问答 >
问题:

如何在react native中集中下一个字段输入?

郗欣嘉
2023-03-14

我需要在android平台的react native中关注下一个字段输入。但是focus()函数在android react native中不存在,仅在IOS中存在。

这是怎么做的?我将react native与typescript一起使用。

共有3个答案

充栋
2023-03-14

这是我的工作:

<Input
  blurOnSubmit={false}
  returnKeyType="next"
  onSubmitEditing={() => {
    this.passwordInput.wrappedInstance.focus();
  }}
/>
<Input
  secureTextEntry
  ref={(input) => {
    this.passwordInput = input;
  }}
/>
赏彭薄
2023-03-14

您必须在您希望关注的输入上使用ref:

<Input
   ref={(node) => { this.myInput = node }}
   value={this.state.myInput.toString()}
   onSubmitEditing={() => { this.myOtherInput.focus() }}/>
<Input
   ref={(node) => { this.myOtherInput = node }}
   value={this.state.myOtherInput.toString()}/>

您可以看到,当您提交对第一个输入的编辑时,您将关注第二个输入。你可以用这个。MY_CUSTOM_REF.focus()可以在任何地方使用。

袁弘方
2023-03-14

聚焦功能工作得很好。

<View style={{flexDirection: 'row'}}>
        <Text style={{flex: 1}}>Enter Name: </Text>
        <TextInput ref="name" onChangeText={(name) => this.setState({name})} style={{flex: 1}}
          onSubmitEditing={() => this.refs.age.focus()}/>
      </View>
      <View style={{flexDirection: 'row'}}>
        <Text style={{flex: 1}}>Enter Age: </Text>
        <TextInput ref="age" keyboardType="numeric" onChangeText={(age) => this.setState({age})} style={{flex: 1}}
          onSubmitEditing={() => this.refs.sport.focus()}/>
      </View>
      <View style={{flexDirection: 'row'}}>
        <Text style={{flex: 1}}>Enter Favourite Sport: </Text>
        <TextInput ref="sport" onChangeText={(sport) => this.setState({sport})} style={{flex: 1}}/>
      </View>

希望这能有所帮助。这是为Android。

 类似资料:
  • 您能告诉我如何在react中集中输入日期字段吗?我正在使用一个语义插件https://www.npmjs.com/package/semantic-ui-calendar-react 我想把日期输入框集中在按钮上,点击这里是我的代码。这是我的密码https://codesandbox.io/s/3l414mno5 焦点不在输入领域,为什么?有更新吗?

  • 问题内容: 如何在AngularJS表单元素内的输入字段中自动大写第一个字符? 我已经看到了jQuery解决方案,但相信在AngularJS中必须使用指令来完成此操作。 问题答案: 是的,您需要定义一个指令并定义自己的解析器函数: HTML: 小提琴

  • 我想使用jquery获取foreach循环中的输入字段值。下面是html结构 我试图通过这种方式获得价值 但这样,我只得到第一行的值。如何使用jQuery获取所有行的值?

  • 问题内容: 我想禁用Fieldset内的所有元素,但要启用其中的几个按钮。 演示: 问题答案: 试试这个: HTML: 脚本:

  • userId是users集合中用户的_id字段。每个用户还有一个名字和一个电子邮件字段。 如何为ResearchThread.Pending.Collaborators对象数组中的每个用户将用户集合中的名称和电子邮件字段填充到此文档中?而且,当在模板中使用时,填充的数据会是反应性的吗?

  • 我在selenium查找输入文本字段时遇到了问题--'billing-address__line-1我使用的代码是- 错误信息 线程“main”org.openqa.selenium.nosuchelementException:没有这样的元素:无法定位元素:{“method”:“xpath”,“selector”:“.//fieldset[.//input[@id='billing-addres