我使用以下内容: - 我有一个DialogFragment,该视图包含一个列表视图和一个按钮 - 列表视图包含图像视图,文本视图和复选框 - 我有listview的自定义适配器
在DialogFragment视图中按下按钮后,需要的是复选框的值。 我怎么做?如何从我的适配器外部访问checbox的值,这些值只在我的适配器内部(据我所知)?
我可以在我的适配器中添加一个公共方法,其中存储了checbox的值吗?或者还有另一种方式吗?
答案 0 :(得分:0)
好的,那么你可以做什么......在适配器类中创建实例变量
SparseBooleanArray mCheckStates;
然后在构造函数中初始化它,其中 data.length 是您要显示的值的长度
mCheckStates = new SparseBooleanArray(data.length);
然后您可以在适配器中实现方法,如:
public boolean isChecked(int position) {
return mCheckStates.get(position, false);
}
public void setChecked(int position, boolean isChecked) {
mCheckStates.put(position, isChecked);
}
public void toggle(int position) {
setChecked(position, !isChecked(position));
}
你很高兴...有关更多信息,你可以看到这个链接:Get Selected Item Using Checkbox in Listview