当前位置: 首页 > 工具软件 > Focusable > 使用案例 >

那些年关于Focusable和clickable的坑,完美解决。

郭易安
2023-12-01

之前也出现过类似的问题,解决办法直接将ImageView在xml中添加onfocusable 属性,clickable属性就解决了。

有俩个问题:

(1)ImageView抢夺父布局焦点中关于Focusable的坑。

可是这次竟然没有反应,尝试了半天,最终发现要在代码中设置

mIvAvatar.setClickable(false);

其中setClickable属性占作用。这样就可以解决问题了。

(2)GridView抢夺ScrowView 焦点,整体布局直接向上移动一段距离。

而这时,在设置clickable(false);就没有作用了,在xml中设置也是没有作用的,只有在代码中设置setFocusable(false);才有作用。

所以总结以上两点,一般出现与抢夺焦点有关的问题的时候,在代码里同时设置

setClickable(false);

setFocusable(false);

(3).在布局的根设置属性android:descendantFocusability="blocksDescendant"

这样一般就可以解决问题。

希望可以帮到有需要的帮助的童鞋。


 类似资料: