android – React Native.当页面在计时器滴答时重新渲染时,如何将焦点保持在文本输入上

前端之家收集整理的这篇文章主要介绍了android – React Native.当页面在计时器滴答时重新渲染时,如何将焦点保持在文本输入上前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在编写一个计时器应用程序,在clojurescript中使用反应原生的 android(使用试剂,希望不重要).

我有一个TextInput,我接受用户的文本来命名计时器.每当我的计时器滴答时,整个Android应用程序重新渲染,我就会失去对TextInput的关注.我目前正在使用onChangeText来保存我正在键入的字符,有没有办法在计时器滴答作响时保持对文本输入的关注?

谢谢.

解决方法

最简单的解决方案是在componentDidUpdate方法调用this.refs.yourTextInput.focus().但是,这可能会导致键盘动画下来,然后再次动画.

问题的根源是您的计时器值和TextInput共享相同的范围,因此在更新状态时,通过render函数重新呈现计时器和TextInput.理想情况下,您可以:

将计时器文本放在自定义组件中,并在该自定义组件上添加方法以设置其自己的状态.只要自定义组件的状态是正在更新的状态,这将仅导致自定义组件重新呈现.

猜你在找的Android相关文章