作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我计划在我的应用程序中使用快速操作 UI 模式。 Android Quick Actions UI Pattern .快速操作窗口需要一个枢轴 View 才能坚持。
quickAction.show(View pivotView);
我打算对菜单项使用快速操作,我可以访问被单击的项。但问题是我需要从菜单项中引用一个 View ,以便我可以将它传递给快速操作。
我怎样才能获得对所选 menuItem 中的 View 的引用。
最佳答案
您可以通过在 xml 中为您的菜单项提供一个 actionViewClass 属性来实现这一点,然后您将能够获得您想要的枢轴 View 。代码会是这样的
<item
android:id="@+id/menu_find"
android:showAsAction="ifRoom"
android:actionViewClass="android.widget.ImageButton"
/>
在您的 OnCreateOptionsMenu 中执行此操作
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
getMenuInflater().inflate(R.menu.menu_search, menu);
locButton = (ImageButton) menu.findItem(R.id.menu_find).getActionView();
locButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
createPopup();
mQuickAction.show(v);
}
});
return true;
}
关于安卓 : Get view Reference to a Menu Item,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8614293/
我是一名优秀的程序员,十分优秀!