设置Gridview的item不可点击没有用

Gridview和checkbox结合,已经设置item点击事件(主要控制checkbox的选中和未选中状态),
但在点击页面上一个按钮后,要求选中的checkbox对应的item失去点击效果,该怎么实现呢,求大神帮忙解决下,我是菜鸟

2个回答

android:focusable="false"
android:focusableInTouchMode="false"
android:clickable="false"
或者
通过android:descendantFocusability这个属性可以解决上面的问题。这个属性定义了当一个焦点要传递给父容器或者子控件时,父容器和子控件之间获得焦点的关系。具体值如下:
beforeDescendants:父容器会比其子控件率先获得焦点。
afterDescendants:如果没有任何子控件要获得焦点的话,那么父容器才会获得焦点。
blocksDescendants:父容器会阻止其子控件获得焦点(也就是说焦点会由父容器获得)。
所以最后的解决方案是:在自定义的Item布局文件的根布局中加上android:descendantsFocusability="blocksDescendants"
就可以了。

sinat_33815108
sinat_33815108 这个是要在XML中添加的是吧?可我想通过代码动态设置,而且我觉得这里好像如果动态设置了不能点击,是和我之前设置的item点击事件是有冲突的
4 年多之前 回复

AllowFocus=false;

sinat_33815108
sinat_33815108 这个好像没有这个属性啊,是在XML文件中加的吗,如果想通过动态添加可以吗
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐