基本上,如果当前ParseUser
正在查看自己的帖子,我只希望编辑的menuitem图标显示在操作栏中。
我想我可以通过抓住当前解析用户来查看他们自己的帖子(仅仅是postBy简单地是从listview活动传递的意图的字符串):
ParseUser currentUser = ParseUser.getCurrentUser();
if (currentUser.username == postedBy)
{
}
现在问题是如何制作它所以只有ActionBar中的Edit图标才会出现,如果不是这样,那么它们就不会显示出来。 (所以其他人无法编辑)可能在onOptionsItemSelected
?但这对我来说没有意义,有意义的是将它显示在XML的哪个地方?或者可能制作两个菜单XMLS并根据当前用户发布的情况调用一个或另一个?
答案 0 :(得分:2)
嗯,你可以有两个菜单xmls,但这样会有点过分(并且难以维护)。一个更简单的解决方案是以编程方式隐藏菜单选项,即
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
getMenuInflater().inflate(R.menu.main, menu);
// Show option depending on condition.
MenuItem item = menu.getItem(R.id.menu_item_edit_post);
item.setVisible(isUserPost());
return true;
}