0

我的应用程序有问题...溢出菜单不可见!我可以物理地点击手机的右上角并显示菜单项,但没有显示三个点。

这是我的xml:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context="com.android.example.MainActivity">

    <item
        android:orderInCategory="1"
        android:id="@+id/ic_home"
        android:title="Home"
        android:icon="@drawable/ic_home"
        app:showAsAction="withText"
        />

    <item
        android:orderInCategory="2"
        android:id="@+id/ic_chat"
        android:title="Forum"
        android:icon="@drawable/ic_chat"
        app:showAsAction="withText"
        />

    <item
        android:orderInCategory="3"
        android:id="@+id/ic_videos"
        android:icon="@drawable/ic_videos"
        android:title="Videos"
        app:showAsAction="withText"
        />

    <item
        android:orderInCategory="4"
        android:icon="@drawable/ic_timeline"
        android:id="@+id/ic_timeline"
        android:title="Timeline"
        app:showAsAction="withText"
        />

    <item
        android:icon="@drawable/ic_phone"
        android:id="@+id/ic_call"
        android:orderInCategory="5"
        android:title="Call"
        app:showAsAction="withText"
        />   

</menu>

Java代码:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    return super.onOptionsItemSelected(item);
}

我在 StackOverflow 上尝试过其他解决方案,但似乎都不起作用。我曾尝试在 2 部手机上运行该应用程序,均使用 Android 版本 > 4.4。

更新: 我尝试向应用程序添加导航抽屉。同样,当我点击抽屉按钮应该在的一侧时,菜单会显示,但按钮不可见......

更新 2: 我尝试在 style.xml 中更改主题设置。当我将 windowActionBar 设置为 true 而不是 false 并将 windowNoTitle 设置为 false 而不是 true 时,抽屉和溢出菜单都会出现。但是,我的工具栏像这样显示在操作栏下方。

如何将菜单按钮添加到实际的(白色)工具栏?

提前致谢。

4

3 回答 3

0

好的,我找到了答案:

我再次获得了默认操作栏,然后为自定义操作栏创建了布局资源文件。

我在自定义操作栏文件中添加了所需栏的设计/规格,然后将操作栏设置为自定义操作栏文件。

这一切都成功了!

于 2017-11-22T17:47:43.993 回答
0

你有没有设置toolbar

Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);

查看此答案以获取完整说明。

于 2017-11-20T16:25:29.620 回答
0

删除 onCreateOptionsMenu 和 onOptionsItemSelected 并像这样使用它

 Toolbar toolbar=(Toolbar) findViewById(R.id.toolbar);
    toolbar.inflateMenu(R.menu.main_menu);
    toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
        @Override 
        public boolean onMenuItemClick(MenuItem item) {
            return false;
        }
    });

或者如果你在 frgment 而不是在活动中,那么你必须在 onCreateView 中添加这行代码

         setHasOptionsMenu(true);
于 2017-11-20T18:48:10.100 回答