ListView 嵌套 GridView item点击问题

问题描述:
    ListView 嵌套 GridView ,会导致ListView的item中,GridView的那部分位置,点击对ListView的OnItemClickListener的行为无效

解决(2个步骤):
    1. ListView的根布局加上属性:

 android:descendantFocusability="blocksDescendants"

descendantFocusability(姑且叫做:子元素聚焦性能)属性介绍:

(参考:android:descendantFocusability用法简析

该属性是当一个为view获取焦点时,定义viewGroup和其子控件两者之间的关系。

属性的值有三种:

        beforeDescendants:viewgroup会优先其子类控件而获取到焦点

        afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点

        blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点


    2.代码里对GridView设置

         mGridView.setClickable(false);
         mGridView.setPressed(false);
         mGridView.setEnabled(false);


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章