仅在 activity_main 中显示的工具栏项
Posted
技术标签:
【中文标题】仅在 activity_main 中显示的工具栏项【英文标题】:Toolbar items shown only in activity_main 【发布时间】:2016-05-16 16:55:58 【问题描述】:我有只适用于activity_main.xml 的menu_main.xml。如何使 menu_main.xml 在其他地方工作而不是仅在一项活动中工作?当我将内容视图更改为另一个布局时,menu_main 中的工具栏项会消失,并留下空的 app_bar。
menu_main.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=".Przepisy">
<item android:id="@+id/action_settings" android:title="@string/action_settings"
android:orderInCategory="100" app:showAsAction="never" />
</menu>
main.java:
@Override
public boolean onCreateOptionsMenu(Menu menu)
getMenuInflater().inflate(R.menu.menu_przepisy, menu);
return true;
@Override
public boolean onOptionsItemSelected(MenuItem item)
int id = item.getItemId();
if (id == R.id.action_settings)
return true;
return super.onOptionsItemSelected(item);
AndroidMainfest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.ambu.przepisy" >
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme" >
<activity
android:name=".Przepisy"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
【问题讨论】:
您是否也尝试将此添加到您的其他活动中?getMenuInflater().inflate(R.menu.menu_przepisy, menu);
不,我没有:D。谢谢!
【参考方案1】:
您需要添加 getMenuInflater().inflate(R.menu.menu_przepisy, menu); 返回真; 到您想要此菜单的所有活动。在 onCreateOptionsMenu(Menu menu) 方法里面。
【讨论】:
这正是我所需要的。不知道它一定无处不在。谢谢!以上是关于仅在 activity_main 中显示的工具栏项的主要内容,如果未能解决你的问题,请参考以下文章
仅在菜单项上显示模块,但不在 Joomla 中的项目(文章)页面上显示模块