【问题标题】:How to check only one checkbox at a time in NLevel Listview如何在 NLevel Listview 中一次只选中一个复选框
【发布时间】:2017-04-05 15:21:40
【问题描述】:

我正在使用列表视图制作 NLevel 可扩展列表。我在列表视图中添加了仅最后一级数据的复选框。

我想一次只选中一个复选框。请任何人帮助我!

这是我的代码

@Override
public View getView(final NLevelItem item) {
// .......

final CheckBox checkBox = (CheckBox)view.findViewById(R.id.check);
checkBox.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        //store checkbox state, note that NLevelItem item might need to be defined with 'final'
        item.setChecked(checkBox.isChecked());

        if(checkBox.isChecked()){
            tempList.add((String) ((SomeObject)childs.getWrappedObject()).getName()+"+"+name);
        }
        else {
            tempList.remove((String) ((SomeObject)childs.getWrappedObject()).getName()+"+"+name);
        }
    }//onClick()
}//setOnClickListener()

//update checkbox state from the corresponding NLevelItem
checkBox.setChecked(item.isChecked());

//.......
}//getView()

提前谢谢....

【问题讨论】:

  • 您可以使用单选按钮代替复选框进行单选
  • @SachinShelar 使用您上面的链接,但我的情况受到影响 item.setChecked(checkBox.isChecked());

标签: java android


【解决方案1】:

RadioGroup 中有 RadioButton 用于执行此操作,为什么要使用复选框

【讨论】:

  • 我只想要复选框.. 不需要单选按钮
  • 然后你可以声明一个 int checkOptionId 并将选中的复选框的 id 存储在其中......当用户选中另一个复选框时,你可以取消选中前一个
猜你喜欢
  • 2012-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-07-11
  • 1970-01-01
相关资源
最近更新 更多