自定义适配器中复选框的值

时间:2014-04-01 21:01:51

标签: android listview checkbox adapter android-arrayadapter

我使用以下内容: - 我有一个DialogFragment,该视图包含一个列表视图和一个按钮 - 列表视图包含图像视图,文本视图和复选框 - 我有listview的自定义适配器

在DialogFragment视图中按下按钮后,需要的是复选框的值。 我怎么做?如何从我的适配器外部访问checbox的值,这些值只在我的适配器内部(据我所知)?

我可以在我的适配器中添加一个公共方法,其中存储了checbox的值吗?或者还有另一种方式吗?

1 个答案:

答案 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