listview checkbox的问题 100

listview中加入checkbox后,设置android:focusable="false"android:checked="false"后现在有一个问题,check... listview中加入checkbox后,设置
android:focusable="false"
android:checked="false"
后现在有一个问题,checkbox点击两次后,即选中再去除选中,这时再点击,就无法选中了,点到的永远都是item了,请问怎么解决
展开
 我来答
匿名用户
2013-04-29
展开全部
如果你的自定义ListViewItem中有Button或者Checkable的子类控件的话,那么默认focus是交给了子控件,而ListView的Item能被选中的基础是它能获取Focus。
我们可以通过对Item Layout的根控件设置其android:descendantFocusability=”blocksDescendants”来解决,这样Item Layout就屏蔽了所有子控件获取Focus的权限,如此就可以顺利的响应onItemClickListener中的onItenClick()方法了。

android:descendantFocusability有三种属性:
beforeDescendants:viewgroup会优先其子类控件而获取到焦点
afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点
blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点
双四别阴我
2013-04-15 · TA获得超过2282个赞
知道大有可为答主
回答量:1250
采纳率:57%
帮助的人:1199万
展开全部
android:focusable="false"
去掉看看。

checkBox还真没发现会出什么问题。
追问
checkbox本身是不会有什么问题,但是放在listview里就不一样了,因为如果不加上android:focusable="false",checkBox的焦点是高于listview的,这样你就点不到ietm了
------------
这个问题已经解决了,在checkbox的click里,加上notifyDataSetChanged()来刷新页面即可解决
追答
学习了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式