繁体   English   中英

如何处理列表视图android中的复选框?

[英]how to handle checkbox in listview android?

我使用ListView.Code的复选框工作正常。 我很想让所有列表都被选中。 我用下面的代码来检查项目。 但这是给出清单重点领域的结果。

int firstPosition = list.getFirstVisiblePosition();

        for(int i = firstPosition; i < list.getCount(); i++){
            View v = list.getChildAt(i);
            if(v != null){
                cbx = (CheckBox)v.findViewById(R.id.c_checkbox);
                if(cbx.isChecked()){
                                        //adding this check box to one sub list
                }
            }
        }

但是它只给出可聚焦的列表项结果。根据子列表,我想填充菜单,这就是为什么我在onPrepareOptionsMen()方法中使用此代码并单击菜单项从数据库中删除该列表的原因。 我找到了另一个解决方案是

long checkedPos[] =list.getCheckedItemIds();

但它给

01-31 12:07:16.042:WARN / dalvikvm(294):VFY:无法解析虚拟方法808:Landroid / widget / ListView; .getCheckedItemIds()[J 01-31 12:07:16.042:WARN / dalvikvm( 294):VFY:在0x0024拒绝操作码0x6e

这个错误。 在Google上搜索后,我发现了另一个解决方案

http://groups.google.com/group/android-developers/browse_thread/thread/368d0bae027aab63/1c61f007e821ed2a?q=%22获取+ the + state + of + a + checkbox + inside + of + a + listview%22 +% 22Romain + Guy%22#1c61f007e821ed2a

但是我想在PrepareOptionMenu()的活动中使用SparseBooleanArray。如何从适配器将结果返回到我的活动中。请给我建议吗?

最后我使用了SparseBooleanArray.Now可以正常工作了。 问候,Android开发人员

通过在我的自定义适配器中使用SparseBooleanArray,解决了此问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM