Android 通过按下ListView的onItemClick,使ActionBar按钮出现

Android 通过按下ListView的onItemClick,使ActionBar按钮出现,android,listview,android-fragments,android-listview,android-actionbar,Android,Listview,Android Fragments,Android Listview,Android Actionbar,我目前有一个包含listView的片段,我希望当用户从listView中选择一个项目时,一个按钮变得可见。我尝试了以下代码: MenuItem infoButton = menu.findItem(R.id.moreInfoButton); infoButton.setVisible(true); 单击列表项时,我得到的只是一些其他基本功能,我必须显示有关所选项的更多信息,但只有此功能不起作用。当我在try-catch块中按具有上述代码的列表项时,日志显示了这一点: 11-17 12:50:3

我目前有一个包含listView的片段,我希望当用户从listView中选择一个项目时,一个按钮变得可见。我尝试了以下代码:

MenuItem infoButton = menu.findItem(R.id.moreInfoButton);
infoButton.setVisible(true);
单击列表项时,我得到的只是一些其他基本功能,我必须显示有关所选项的更多信息,但只有此功能不起作用。当我在try-catch块中按具有上述代码的列表项时,日志显示了这一点:

11-17 12:50:39.211  14126-14126/myPackage W/System.err﹕ java.lang.NullPointerException
11-17 12:50:39.216  14126-14126/myPackage W/System.err﹕ at myPackage.fragmentName$3.onItemClick(fragmentName.java:417)
你知道我能做什么吗?可能在菜单布局文件中声明一个菜单项和findViewByID?或者这是一种不正确的方式


谢谢大家!

在片段/活动上创建一个布尔字段,指示是否显示按钮。在onItemClick上更改其值,更改后调用Activity.InvalidateOptions功能表。这将调用PrepareOptions功能表。在该方法中,检查字段并在操作栏上显示/隐藏所需的按钮。

为了澄清您的回答,我应该在哪里声明操作栏中的按钮?然后我会通过如下方式更改其可见性:buttonName.setVisiblebooleanValue吗?我之所以问这个问题,是因为我在onCreateView中将可见性设置为false,这会导致崩溃,然后在onClick中将其设置为true。首先将其设置为“不可见”。并更改其在OnPreparateOptions Menuokay上的可见性。我声明了该按钮并将可见性设置为false。然后在Java中,我声明私有menuitemmybutton;myButton=menu.findItemR.id.actionBarButton;在onCreateView中。然后我有了myButton.setVisibletrue;在OnPrepareOptions功能表中-还是应该在onClick?中?。当我尝试输入Activity.InvalidateOptions功能表时,第二部分说它无法解析符号。请再次阅读我的答案。你似乎不明白国旗是什么。