【React Native】TextInput无法自动拉起键盘

简介

当点击按钮跳转到新Modal或新Page上有文本框时,有时会希望可以在新页面加载完后输入框自动获得焦点,并唤起键盘。TextInput本身有autoFocus属性,可以在组件加载完成后获得焦点,但是键盘并不一定会弹出。

解决方案

  1. 取消textInputautoFoucs
  2. 获得要定位的TextInputref
  3. componentDidMount函数中调用setTimeout方法,延时20ms-100ms,个别机型需要延时大一些,函数内执行ref.focus()
  4. 如果是Modal,验证是否每次打开都会执行componentDidMount,也就是每次Modal关闭时内容是否会被销毁。如果不是,则可以在ModalonShow属性上延时调用focus()方法

有用的话记得点个赞哦~

你可能感兴趣的:(react,native,web全栈行走轨迹)