Java Android弹出菜单未定位到操作栏上的按钮
我在Android上创建弹出菜单时遇到问题。实际上,我想动态加载弹出窗口,但当我执行应用程序时,菜单不在屏幕上,并且没有固定在按钮上…为什么 这是一个需要理解的屏幕: 这是我用来创建弹出菜单的摘要代码:Java Android弹出菜单未定位到操作栏上的按钮,java,android,layout,android-actionbar,popupmenu,Java,Android,Layout,Android Actionbar,Popupmenu,我在Android上创建弹出菜单时遇到问题。实际上,我想动态加载弹出窗口,但当我执行应用程序时,菜单不在屏幕上,并且没有固定在按钮上…为什么 这是一个需要理解的屏幕: 这是我用来创建弹出菜单的摘要代码: public class MainActivity extends FragmentActivity { PopupMenu select_job; @Override protected void onCreate(Bundle savedInstanceStat
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,用于为whitin充气:
<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>
我做错了什么
谢谢
select_job = new PopupMenu(this, view);
在这里,视图是弹出菜单的定位点。您应该将MenuItem(R.id.popupmenu)作为锚传递
我自己还没有做过(将弹出菜单定位到Actionbar项目),但我认为这应该是它背后的想法
从Android文档中:
公共弹出菜单(上下文、视图锚定)
在API级别11中添加
构造一个新的弹出菜单
参数
上下文:弹出菜单的上下文
锚定:此弹出窗口的锚定视图。如果有空间,弹出窗口将显示在锚点下方,如果没有空间,弹出窗口将显示在锚点上方 谢谢!但我还有一个问题:如何在视图中传递菜单项?PopupMenu只接受一个视图(R.id.PopupMenu不是视图)…我在这里找到了答案,我想:)谢谢!我稍后再试!我现在不在家:)