溢出菜单不显示
Overflow Menu doesn't show
我的应用程序有问题...溢出菜单不可见!我可以点击 phone 的右上角并显示菜单项,但三个点不显示。
这是我的 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);
}
我在 Whosebug 上尝试过其他解决方案,但其中 none 似乎有效。我已经 运行 在 2 phone 上尝试了该应用程序,两者的 Android 版本都 > 4.4。
更新:
我尝试向应用程序添加导航抽屉。同样,当我点击应该是抽屉按钮的一侧时,菜单出现了,但按钮不可见...
更新二:
我尝试在 style.xml 中更改我的主题设置。当我将 windowActionBar 设置为 true 而不是 false 并将 windowNoTitle 设置为 false 而不是 true 时,抽屉和溢出菜单都会显示出来。但是,我的工具栏显示在操作栏下方 like this。
如何将菜单按钮添加到实际(白色)工具栏?
提前致谢。
你设置了吗toolbar
:
Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);
删除 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而不是activity那么你必须在onCreateView
中添加这行代码
setHasOptionsMenu(true);
好的我找到了答案:
我又找回了默认操作栏,然后为自定义操作栏创建了布局资源文件。
我在自定义操作栏文件中添加了所需栏的design/specs,然后将操作栏设置为自定义操作栏文件。
一切顺利!
我的应用程序有问题...溢出菜单不可见!我可以点击 phone 的右上角并显示菜单项,但三个点不显示。
这是我的 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);
}
我在 Whosebug 上尝试过其他解决方案,但其中 none 似乎有效。我已经 运行 在 2 phone 上尝试了该应用程序,两者的 Android 版本都 > 4.4。
更新: 我尝试向应用程序添加导航抽屉。同样,当我点击应该是抽屉按钮的一侧时,菜单出现了,但按钮不可见...
更新二: 我尝试在 style.xml 中更改我的主题设置。当我将 windowActionBar 设置为 true 而不是 false 并将 windowNoTitle 设置为 false 而不是 true 时,抽屉和溢出菜单都会显示出来。但是,我的工具栏显示在操作栏下方 like this。
如何将菜单按钮添加到实际(白色)工具栏?
提前致谢。
你设置了吗toolbar
:
Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);
删除 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而不是activity那么你必须在onCreateView
中添加这行代码 setHasOptionsMenu(true);
好的我找到了答案:
我又找回了默认操作栏,然后为自定义操作栏创建了布局资源文件。
我在自定义操作栏文件中添加了所需栏的design/specs,然后将操作栏设置为自定义操作栏文件。
一切顺利!