Android popup menu is not anchored to button on Action bar
我在Android上创建弹出菜单时遇到问题。通常,我想动态加载弹出窗口,但是当我执行该应用程序时,菜单不在屏幕上,并且没有固定在按钮上...为什么?
这是一个可以理解的屏幕:
这是我用来创建弹出菜单的摘要代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | public class MainActivity extends FragmentActivity { PopupMenu select_job; @Override protected void onCreate(Bundle savedInstanceState) { //... View view = inflater.inflate(R.layout.my_custom_layout ,null); select_job = new PopupMenu(this, view); select_job.getMenu().add("ProvaLavoro"); } public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()) { case R.id.popupmenu: select_job.show(); break; } } } |
这是my_custom_layout.xml,用于使发白膨胀:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/txtNameJobND" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="0dp" android:textColor="#111" android:textStyle="bold"/> </RelativeLayout> |
我在做什么错?
谢谢!!
1 |
在这里,视图是弹出菜单的"锚点"。您应该传递MenuItem(R.id.popupmenu)作为锚点。
我自己没有做过(将PopupMenu固定到Actionbar项上),但是我认为这应该是它的背后思想。
来自Android文档:
公共PopupMenu(上下文上下文,视图锚)
已添加到API级别11
构造一个新的PopupMenu。
参数
context:PopupMenu的上下文。
anchor:此弹出窗口的锚点视图。如果有空间,则弹出窗口将显示在锚点的下方;如果没有空间,则弹出窗口将显示在其上方。