不能使用sharedpreferences从Viewholder中删除Listview项

时间:2019-06-13 08:45:03

标签: android-listview sharedpreferences android-viewholder

我可以使用sharedpreferences Gson保存数据。我还可以使用复选框(每个listview项内的复选框)删除customlistview项。但是在我重新启动应用程序后删除项目后,再次返回删除项目。 删除viewholder类中的item方法工具。我包括getView方法:

public View getView(final int position, View convertView, ViewGroup parent) {

    final SharedPreferences sharedPreferences=context.getSharedPreferences("deleteitem",Context.MODE_PRIVATE);
    viewHolder.checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if(isChecked)
            {
                SharedPreferences sharedPreferences=context.getSharedPreferences("deldata",0);
                SharedPreferences.Editor editor=sharedPreferences.edit();
                editor.remove(dialogData.get(position)); //error is here
                editor.apply();
                notifyDataSetChanged();
            }
        }
    });
    return convertView;
}

0 个答案:

没有答案