【发布时间】:2016-03-16 00:39:08
【问题描述】:
从关于 isChecked() 无法在 android 中运行的大量问题中,我已经接受了要获得 checkbox 的检查状态,您需要添加一个侦听器。但我只是想知道是否有人知道它为什么不能正常工作,这是一个错误吗?我是否误解了所需的功能?
这里有一些代码供您参考。
View itemView = adapter.getView(i, null, autoDiscoverListView);
CheckBox selected = (CheckBox)itemView.findViewById(R.id.cbEnabled);
if(selected.isChecked()){
...
}
这是getView中与复选框相关的代码
CheckBox cbEnabled = (CheckBox) convertView.findViewById(R.id.cbEnabled);
cbEnabled.setChecked(item.getEnabled());
cbEnabled.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton compoundButton, boolean enabled) {
...
}});
【问题讨论】:
-
你有没有通过在sysout上打印selected.isChecked()的值来检查.. Logcat
-
你能用xml发布完整的代码吗?
-
它似乎正在工作...stackoverflow.com/questions/18336151/…
-
默认不勾选..thtsy返回false..你必须添加listner
-
您的 CheckBox 似乎在 ListView 项目布局中。如果您在其中的某些侦听器中得到错误的检查状态,我们需要查看您的
getView()方法。
标签: android checkbox android-listview