gpt4 book ai didi

java - Viewholder 上的空指针

转载 作者:行者123 更新时间:2023-12-01 16:38:20 28 4
gpt4 key购买 nike

我试图在我的主要 Activity 中而不是在我的自定义适配器中保存复选框的状态。我已检查共享首选项中是否存储了正确的数据,并且可以成功检索信息,但是当我尝试在打开应用程序时标记复选框时, View 持有者为空。理论上我明白问题是什么,但我不知道如何解决它。

这是我遇到问题的主要 Activity 的代码部分:

for (int i= 0; i<results.size(); i++) {
result = (Results) customAdapter.getItem(i);
if (result != null) {
String RESULT = result.getTitle();
if (sharedPref.getBoolean(result.getTitle(), false)){
Log.i("Saved", result.getTitle());
CustomAdapter.ViewHolder viewHolder = (CustomAdapter.ViewHolder) listView.getTag(i);
Log.i("viewHolder", String.valueOf(viewHolder));
viewHolder.getCheckBox().setChecked(sharedPref.getBoolean(RESULT, false));
}
}
}

最佳答案

您正在准备List<Results>传递给适配器对吗?首先在Results中添加一个额外的 boolean 变量模型类来表示复选框的状态。现在,当您在 Activity 中准备列表时,请从首选项中为每个项目设置此新 boolean 值的值。这样你的List<Results>包含复选框的状态。

关于java - Viewholder 上的空指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61913174/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com