2016-11-30 40 views
0

我可以在菜单设计看有图片这样的Android没有菜单项显示在布局

http://imgur.com/a/rBLbo

但是当我切换到布局设计

http://imgur.com/a/rw2iB

我看不到菜单了。

我已经检查菜单设置

  1. 做出onCreateOptionsMenu

  2. 套餐/ main.xml中

  3. 的xmlns:工具/工具:背景

但它仍然没有菜单栏。 的代码如下:

MainActivity.java

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.menu_main, 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); 
} 

布局/ activity_main.xml中

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:orientation="vertical" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:paddingBottom="@dimen/activity_vertical_margin" 
tools:context="com.example.jason.web_control.MainActivity"> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_above="@+id/playPauseButton" 
      android:clickable="true" 
      android:background="@android:color/holo_blue_dark" 
      android:id="@+id/mousePad" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentStart="true" /> 

    </RelativeLayout> 
</LinearLayout> 

菜单/ 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="com.example.jason.web_control.MainActivity"> 
<item 
    android:id="@+id/action_settings" 
    android:title="@string/action_settings" 
    app:showAsAction="always" /> 
</menu> 
+0

检查您正在使用的主题,,可能是你正在使用noactionbar主题 –

+0

我想你的代码,并可以能够通过在扩展ActionBarActivity实现并且在加appcompactV7罐子....如果你是得到解决方案更新,我会发布代码..谢谢:) – HsRaja

回答

1

请在这行你代码 setHasOptionsMenu(true);

+0

感谢您的回答。但是这个活动并没有在片段中扩展。 我无法在onCreate()函数中调用setHasOptionMenu。 – nevertoold

0
What I did was                       

    public MoviesFragment() { 
     setHasOptionsMenu(true); 
    } 
and need to override                       
    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 

     int id = item.getItemId(); 
     switch (id) { 

     } 
     return super.onOptionsItemSelected(item); 
    }