【问题标题】:Block checkBox's in a listView在 listView 中阻止复选框
【发布时间】:2012-08-26 03:45:53
【问题描述】:

我有一个 listView (android.R.layout.simple_list_item_multiple_choice),其中列表的每一行都有一个复选框。

单击一个按钮时,我需要阻止所有复选框。但我不知道如何同时阻止所有复选框。

if(checkAll.isChecked()==true){
            all.clear();
            //É adicionado cada id ao array list
            for(int i=0 ; i<listViewSocios.getCount() ; i++){
                listViewSocios.setItemChecked(i, true);

            }
        }

每行中的所有复选框都已选中,但我也希望启用所有此复选框 你能帮助我吗?谢谢


我尝试过这种方法,但不起作用....

 for(int i=0 ; i<listViewSocios.getCount() ; i++){
                listViewSocios.setItemChecked(i, true);
                CheckBox cb = (CheckBox)listViewSocios.getChildAt(i).findViewById(android.R.id.text1);
                cb.setEnabled(false);

【问题讨论】:

标签: android listview checkbox listviewitem


【解决方案1】:

我解决了这个问题....

for(int i=0 ; i<listViewSocios.getCount() ; i++){
    listViewSocios.setItemChecked(i, true);
    CheckedTextView cb = (CheckedTextView)listViewSocios.getChildAt(i).findViewById(android.R.id.text1);
    cb.setEnabled(false);
 }

我不记得 listView 的每个子项是如何传递的。但我想起来了。呵呵

感谢您的宝贵时间.... :)

【讨论】:

    【解决方案2】:

    通过此代码禁用您的复选框单击事件

    theCheckBox.setClickable(false);
    

    【讨论】:

    • 但这项工作只适用于一个复选框。如何为所有复选框执行此操作哦 listview 与多选?
    • 完美!一个复选框正在捕获 ListView 项目内的所有点击,只需在我的布局文件中设置 android:clickable=false 即可解决我的问题。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    • 1970-01-01
    • 2014-05-07
    • 2016-03-14
    相关资源
    最近更新 更多