防止EditText在activity启动时获得焦点,解决EditText.clearFocus无效问题

原本想通过在activity onCreate方法中调用EditText.clearFocus,发现不行

Google后发现原因:Android系统本身会有自动对焦行为,这是内置于其应用程序结构的行为。如果没有焦点转移到的新对象,即使该元素是刚刚清除焦点的元素,也会在布局中选取第一个可聚焦元素!这有点疯狂和令人沮丧,但也许这种行为是有道理的。

最终解决方案:再EditText的父布局中添加即可解决:

android:focusable="true"

 android:focusableInTouchMode="true"

本文参考StackOverflow中的  Stop EditText from gaining focus at Activity startup

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容