无法将图标添加到操作栏

Unable to add icons to action bar

我最近开始了一个新项目并创建了一个自定义操作栏,但由于某种原因它没有添加图标,它们会出现在溢出部分而不是实际栏上! :(,真的很抱歉,如果这看起来很简单,我才刚刚开始学习 android,我会 post 下面是我的代码。

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=".MainActivity">

<item android:id="@+id/maps"
    android:icon="@drawable/ic_action_map"
    android:title= "@string/maps"
    app:showAsAction="ifRoom"
    android:orderInCategory="100"/>

<item android:id="@+id/action_settings"
    android:title="@string/action_settings"
    android:orderInCategory="100"
    app:showAsAction="never" />

我主要方法的一部分

  @Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu items for use in the action bar
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.menu_main, menu);
    return super.onCreateOptionsMenu(menu);
}

提前致谢

编辑:我也在使用 android studio

edit2:这是我的清单文件。

<?xml version="1.0" encoding="utf-8"?>

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_maps"
    android:label="@string/app_name"
    android:theme="@style/AppTheme"
   >
    <activity
        android:name=".MainActivity"
        android:label="SIX REP MAX" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".Chest"
        android:parentActivityName=".MainActivity">
    </activity>
    <activity android:name=".Back"
        android:parentActivityName=".MainActivity">
    </activity>
    <activity android:name=".Biceps"
        android:parentActivityName=".MainActivity">
    </activity>
    <activity android:name=".Triceps"
        android:parentActivityName=".MainActivity">
    </activity>
    <activity android:name=".Shoulders"
        android:parentActivityName=".MainActivity">
    </activity>
    <activity android:name=".Legs"
        android:parentActivityName=".MainActivity">
    </activity>
</application>

编辑 3:这是我的自定义操作栏

<resources>

<!-- Base application theme. -->
<style name="AppTheme" parent="@android:style/Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
</style>

<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">#0099FF</item>
    <item name="android:titleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item>

</style>
<style name="MyTheme.ActionBar.TitleTextStyle" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:textColor">#ffffff</item>
    <item name="android:textSize">24sp</item>
</style>

对所有菜单项执行此操作:

app:showAsAction="always"

并将此添加到您的 Activity:

@Override
public boolean onPrepareOptionsMenu (Menu menu) {
    // This will hide the 3-dots menu
    return false;
}

试试这个。这会起作用。

这是您应该使用的代码,仔细查看 onCreateOptionsMenu

中的 return
 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getSupportMenuInflater();
    inflater.inflate(R.menu.some_menu_xml, menu);

   //return true is important here
    return true;
 }
 @Override
 public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.maps:
            //Do Something
            return true;
        case android.R.id.home:
           //Do Something else
            return true;
    }
    return super.onOptionsItemSelected(item);
}

试试下面的代码:

    <item android:id="@+id/maps"
    android:icon="@drawable/ic_action_map"
    android:title= "@string/maps"
    app:showAsAction="always"
    android:orderInCategory="100"/>
   <item android:id="@+id/action_settings"
    android:title="@string/action_settings"
    android:orderInCategory="100"
    app:showAsAction="always" />

可能您的图像不适合操作栏。所以当你尝试

app:showAsAction="ifRoom"

放错地方了。所以不要总是使用 ifRoom put。否则尝试调整图像大小以适合您的操作栏

您的代码似乎没问题,但请尝试删除

xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity"

来自 <menu> 标签并删除

android:orderInCategory="100"

来自 <item android:id="@+id/maps"