我有自定义适配器和一个名为groceries
的ArrayList<String>
,其中包含用户放置的所有内容。使用sharedPreferences保存颜色和删除线文本
这是我的方法节省每当用户将一些存在或删除ListView控件:
public void saveGroceriesList() {
sharedPreferences = getContext().getSharedPreferences("com.me.application", Context.MODE_PRIVATE);
HashSet<String> set = new HashSet(groceries);
sharedPreferences.edit().putStringSet("Groceries", set).apply();
}
在这里,我将文字删除,并改变颜色的onClick为ListView控件:
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
list_content = (TextView) view.findViewById(R.id.list_content);
if (!isChecked){
isChecked = true;
list_content.setPaintFlags(list_content.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
list_content.setTextColor(Color.parseColor("#a7a7a7"));
saveGroceriesList();
} else {
isChecked = false;
list_content.setPaintFlags(list_content.getPaintFlags() & (~ Paint.STRIKE_THRU_TEXT_FLAG));
list_content.setTextColor(Color.parseColor("#000000"));
saveGroceriesList();
}
}
});
其中list_content
是我的TextView的ListView。问题是,saveGroceriesList();
方法不会保存颜色。 如何使用sharedPreferences保存颜色和删除线文本?
如果我有单独的TextView,我将如何添加它们以设置? – Zeo
你想从listview中获取allData并保存它们吗? –