有时候会遇到一些需求,比如说:某个悬浮按钮需要在整个项目的页面显示,作为某一个功能的快捷入口,那么这时候就需要考虑一个事件焦点的问题。
如果页面中有EditText的话,不设置的话系统会默认自动获取焦点,就会弹出键盘,那么可以在manifest中设置以下这一句取消自动弹出键盘:
android:windowSoftInputMode="adjustResize|stateHidden|adjustPan"
也许这并不能满足需求,那么可以在对应的XML文件中的父类控件里设置 这两句:
android:focusable="true" android:focusableInTouchMode="true"
如果上面两句还不能满足需求的话,在代码中动态请求焦点:
// 动态获取控件焦点 rlTest.setFocusable(true); rlTest.setFocusableInTouchMode(true); rlTest.requestFocus(); rlTest.requestFocusFromTouch();
上面方法亲测有效,希望能够帮到你~