我有ViewPager
并且每个页面都显示一张照片。我展示了一个使用喜欢/不喜欢行为的分割ActionBar
,因此用户可以投票“喜欢”照片或“不喜欢”它。
我成功实施了每张照片的投票功能。
问题:
如何为每张照片设置所选投票的样式?换句话说,如何根据照片的当前状态管理MenuItem
图标?
答案 0 :(得分:0)
您应该创建一个boolean
来检测照片的播放时间,然后拨打setIcon
上的MenuItem
。
final MenuItem liked = YOUR_MENU.findItem(THE_LIKED_ACTION_ID);
if (isLiked()) {
liked.setIcon(YOUR_LIKED_DRAWABLE);
} else {
liked.setIcon(YOUR_DEFAULT_LIKED_DRAWABLE);
}
mViewPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
invalidateOptionsMenu();
}
});