在什么情况下我可以使用选项菜单/操作栏项调用findViewById?

时间:2013-12-31 23:55:25

标签: java android android-actionbar

我正在尝试获取Action Bar中其中一个视图的句柄。我试过打电话:

findViewById(R.id.menu_item)

但是除非我在onOptionsItemSelected方法中调用它,否则返回null。我也试过从另一个对象调用它:

findViewById(android.R.id.content).findViewById(R.id.menu_item)

但这没效果。我怎样才能做到这一点?

(顺便说一下,我没有使用ActionBarSherlock库。另外,这是自定义ActionView。)

1 个答案:

答案 0 :(得分:2)

  

我正在尝试获取Action Bar

中某个视图的句柄

我将假设您的意思是通过android:actionLayout资源的<item>元素中<menu>建立的内容。

  

我试过调用findViewById(R.id.menu_item)

要检索与View相关联的android:actionLayout,请致电findItem()上的Menu以检索MenuItem,然后致电getActionView() MenuItem。这可以在您夸大菜单资源后随时进行。