Android studio 带工具栏的AppCompative活动:工具栏上不显示菜单项
挠头。如果有人能帮忙,那就太好了。我正在使用工具栏从Android studio 带工具栏的AppCompative活动:工具栏上不显示菜单项,android-studio,android-toolbar,Android Studio,Android Toolbar,挠头。如果有人能帮忙,那就太好了。我正在使用工具栏从extends ActionBarActivity切换到extendsAppCompatActivity,需要帮助显示工具栏上的项目 我正在使用扩展AppCompatActivity包括的android.support.v7.app.AppCompatActivity;然后在onCreate()中有: Toolbar jobListToolbar = (Toolbar) findViewById(R.id.job_list_toolbar);
extends ActionBarActivity
切换到extendsAppCompatActivity
,需要帮助显示工具栏上的项目
我正在使用扩展AppCompatActivity包括的android.support.v7.app.AppCompatActivity
;然后在onCreate()中有:
Toolbar jobListToolbar = (Toolbar) findViewById(R.id.job_list_toolbar);
setSupportActionBar(jobListToolbar);
然后在xml文件中
<android.support.v7.widget.Toolbar
android:id="@+id/job_list_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
然后,在菜单文件中,我有一些项目,所有的东西似乎都正常工作,但不是我想要的方式
工具栏/操作栏显示在屏幕顶部,但没有显示菜单项。如果我按phone original menu按钮,则会第一次启动创建选项菜单(菜单菜单)
,并显示菜单。但它显示在这个手机按钮的正上方。但我希望这些按钮显示在屏幕顶部的工具栏/操作栏上。我在某个地方读到,如果手机有硬件菜单按钮,它将不会在工具栏/操作栏中显示菜单项,但我用扩展操作活动
完成了它,但应该有一种方法可以用扩展应用活动
实现这一点。需要使用google推荐的更新方式,但不确定如何在屏幕顶部的工具栏/操作栏上显示项目。MyActivity:
extends AppCompatActivity
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbarhome);
setSupportActionBar(toolbar);
activity_my.xml:如果需要,可以删除最后一行0 ep。它们是0启动工具栏的起点
<android.support.v7.widget.Toolbar
android:id="@+id/toolbarhome"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/AppTheme.PopupOverlay"
app:titleTextAppearance="@style/Toolbar.TitleText"
app:layout_collapseMode="pin"
android:background="@color/colorPrimary"
android:contentInsetLeft="0dp"
android:contentInsetStart="0dp"
app:contentInsetLeft="0dp"
app:contentInsetStart="0dp"
android:contentInsetRight="0dp"
android:contentInsetEnd="0dp"
app:contentInsetRight="0dp"
app:contentInsetEnd="0dp" >
//designed the way you like
</android.support.v7.widget.Toolbar>
//按你喜欢的方式设计
舱单:
<activity
android:name=".MyActivity"
android:theme="@style/AppTheme.NoActionBar"/>
风格:
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light"> </style>
<style name="Toolbar.TitleText" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
<item name="android:textSize">20sp</item>
<item name="android:textStyle">italic</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
20便士
斜体
假的
真的
经过一天关于如何切换到AppCompat工具栏的研究,终于找到了解决方案。两个必须执行的步骤(第2步是无人谈论的步骤):
I.)关于如何设置工具栏的好资源可以在本视频和本教程中找到
二、 )请确保将此代码放在onCreate()的底部:
我的问题是onCreate()中有一些代码修改了工具栏按钮。在打开工具栏之前,需要运行该代码。若只显示上面包含的前两行代码,工具栏将显示,但并没有菜单会膨胀,也并没有按钮。当我调用getSupportActionBar().setDisplayShowHomeEnabled(true)时代码>这就是调用创建选项菜单(菜单菜单)
时的情况(如果未启用true,则不会调用),还要确保您已使用getMenuInflater()。充气(R.Menu.job_list,Menu)代码>内部onCreateOptions菜单(菜单菜单)
如果调用菜单以打开getSupportActionBar().setDisplayShowHomeEnabled(真)的代码
不在onCreate()的末尾,您可能会摸不着头脑为什么菜单没有显示出来。因此,在调用菜单打开之前,请确保执行相关的onCreate()代码。Ahmet,谢谢您的回答,但这是一样的-工具栏/操作栏显示在顶部,但没有显示任何菜单项。只有当我按下三星手机上的菜单按钮时,菜单项才会显示。
toolbar= (Toolbar) findViewById(R.id.job_list_toolbar);
setSupportActionBar(toolbar);
if(getSupportActionBar()!=null) {
getSupportActionBar().setDisplayShowHomeEnabled(true);
}