Android ActionBar菜单总是显示溢出(没有AppCompat)

时间:2016-03-01 00:53:47

标签: android menu android-actionbar icons overflow

enter image description here

无论屏幕大小如何,菜单总是显示3个点,而不是在右上角显示单个图标。

我见过类似的问题,但没有AppCompat就没有。 我在build.gradle文件中使用minSdkVersion 14,以及以下依赖项:

compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:support-v13:23.1.1'

Principal.Java相关代码:

import android.app.ActionBar;

public class Principal extends Activity {
  protected void onCreate(Bundle savedInstanceState) {
    ActionBar actionBar = getActionBar()
    actionBar.setDisplayHomeAsUpEnabled(true);
    actionBar.setDisplayShowHomeEnabled(false);
    actionBar.setDisplayShowTitleEnabled(true);
    actionBar.setDisplayUseLogoEnabled(false);
  }

  @Override
  public boolean onCreateOptionsMenu(Menu menu) {
      getMenuInflater().inflate(R.menu.options_menu, menu);
      return true;
  }
}

这是我的options_menu.xml:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/menu_general">
     <item android:id="@+id/menu_search"
          android:title="@string/search_label"
          android:icon="@drawable/ic_action_search"/> 
</menu>

2 个答案:

答案 0 :(得分:0)

在Method Oncreate中添加:改变你需要的东西

 Toolbar topToolBar = (Toolbar)findViewById(R.id.toolbar);
            setSupportActionBar(topToolBar);
            topToolBar.setLogo(R.drawable.logo);

答案 1 :(得分:0)

您应该在menuItem中设置以下属性:             应用:showAsAction = “总是”

<?xml version="1.0" encoding="utf-8"?>
  <menu xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:app="http://schemas.android.com/apk/res-auto"
      android:id="@+id/menu_general">
          <item android:id="@+id/menu_search"
                android:title="@string/search_label"
                app:showAsAction="always"
                android:icon="@drawable/ic_action_search"/> 
   </menu>