如果ParseUser正在查看自己的帖子,则menuitem仅出现在操作栏中

时间:2014-05-22 17:26:43

标签: java android parse-platform

基本上,如果当前ParseUser正在查看自己的帖子,我只希望编辑的menuitem图标显示在操作栏中。

我想我可以通过抓住当前解析用户来查看他们自己的帖子(仅仅是postBy简单地是从listview活动传递的意图的字符串):

ParseUser currentUser = ParseUser.getCurrentUser();
if (currentUser.username == postedBy)
{

}

现在问题是如何制作它所以只有ActionBar中的Edit图标才会出现,如果不是这样,那么它们就不会显示出来。 (所以其他人无法编辑)可能在onOptionsItemSelected?但这对我来说没有意义,有意义的是将它显示在XML的哪个地方?或者可能制作两个菜单XMLS并根据当前用户发布的情况调用一个或另一个?

1 个答案:

答案 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;
}