【发布时间】:2018-01-12 15:34:43
【问题描述】:
我正在使用 PagedList 实时数据和 PositionalDataSource 以 mvvm 模式创建信息。我在 stackoverflow 上尝试了所有可能的解决方案,类似于它。没用。
在下面的代码中我有空指针异常:尝试在空对象引用上调用虚拟方法'..Item.getSelected()'
我已经非常小心地将它设置在 Item 类上。
@Override
public void onBindViewHolder(PageViewAdapter.PageViewHolder holder, int position) {
item = getItem(position);
if (item != null) {
holder.lineTextView.setText(String.valueOf(item));
}
holder.checkBox.setTag(position);
holder.checkBox.setOnCheckedChangeListener(null);
holder.checkBox.setChecked(item.getSelected());
holder.checkBox.setOnCheckedChangeListener((compoundButton, isChecked) -> {
if (compoundButton.isPressed()) {
// holder.checkBox.setSelected(isChecked);
item.setSelected(isChecked);
}
});
}
My Data Model as Item Class
public class Item {
private boolean selected = true;
public Item(String value) {
this.value = value;
}
public void setSelected(boolean selected) {
this.selected = selected;
}
public boolean getSelected() {
return selected;
}
}
我在 Git 上的代码:https://github.com/kumarjitendra/pageViewItem
【问题讨论】: