从卡片视图 android 中的图标实施 "Add to favourites"
Implement "Add to favourites" from icon in cardview android
在我的应用程序中,添加到收藏夹 卡片视图中的图标。单击该图标后,我的卡片应添加到 我的收藏夹列表 并且该图标应切换为不同的颜色。
再次点击它应该会从我的收藏夹中删除。我想通过sharedpreference来完成这个任务。
我应该如何按顺序完成这项任务?
- 希望您已完成所有布局。如果没有 - 创建它们。确保 Favorites 是一个 ToggleButton
- 为您的 ListView 或 RecyclerView 创建适配器
在Adapter里面,绑定视图的时候调用:
findViewById(R.id.btn_favourite).setOnClickListener(new View.OnClickListener() {
public void OnClick(View view) {
if(view.isSelected) {
markAsFavourite(item);
} else {
removeFromFavourites(item);
}
}
});
其中 item
是 Object 表示您的列表的数据
实施markAsFavourite(item)
;和 removeFromFavourites(item);
方法。这是 markAsFavourite(item)
使用 SharedPreferences 的粗略示例。
Set itemIds = mSharedPreferences.edit().getStringSet(KEY, new Set());
itemIds.put(item.getId);
mSharedPreferences.edit().putStringSet(itemIds).commit();
更新收藏夹列表视图中的数据。
5.1 从 SharedPreferences 获取项目 ID
5.2 Select 项目的 sub-list 根据 ids.
5.3 更新收藏夹列表适配器。
在我的应用程序中,添加到收藏夹 卡片视图中的图标。单击该图标后,我的卡片应添加到 我的收藏夹列表 并且该图标应切换为不同的颜色。
再次点击它应该会从我的收藏夹中删除。我想通过sharedpreference来完成这个任务。
我应该如何按顺序完成这项任务?
- 希望您已完成所有布局。如果没有 - 创建它们。确保 Favorites 是一个 ToggleButton
- 为您的 ListView 或 RecyclerView 创建适配器
在Adapter里面,绑定视图的时候调用:
findViewById(R.id.btn_favourite).setOnClickListener(new View.OnClickListener() { public void OnClick(View view) { if(view.isSelected) { markAsFavourite(item); } else { removeFromFavourites(item); } } });
其中
item
是 Object 表示您的列表的数据实施
markAsFavourite(item)
;和removeFromFavourites(item);
方法。这是markAsFavourite(item)
使用 SharedPreferences 的粗略示例。Set itemIds = mSharedPreferences.edit().getStringSet(KEY, new Set()); itemIds.put(item.getId); mSharedPreferences.edit().putStringSet(itemIds).commit();
更新收藏夹列表视图中的数据。
5.1 从 SharedPreferences 获取项目 ID
5.2 Select 项目的 sub-list 根据 ids.
5.3 更新收藏夹列表适配器。