简体   繁体   English

如何在Android的操作栏上添加四个三个图标

[英]How to add four three icons on Action bar in Android

I want to add three or more than three icons on Action bar, I have tried but my third icons does not on the action bar .Can someone explain me how to add third option on action bar .How to resolve this issue. 我想在操作栏上添加三个或三个以上的图标,我已经尝试过,但是我的第三个图标不在操作栏上。有人可以解释一下如何在操作栏上添加第三个选项。如何解决此问题。

menu.xml menu.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:appcompat="http://schemas.android.com/apk/res-auto"
    xmlns:app="http://schemas.android.com/tools">

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

    <item
        android:id="@+id/imgAdd"
        android:title="@string/CreatePost"
        android:orderInCategory="200"
        android:icon="@android:drawable/ic_menu_add"
        app:showAsAction="ifRoom"></item>

    <item
        android:id="@+id/menu_search"
        android:title="menu_search"
        android:orderInCategory="300"
        appcompat:actionViewClass="android.support.v7.widget.SearchView"
        appcompat:showAsAction="ifRoom"/>

</menu>

acivity code 激活码

public class AllPost_ActionBar extends ActionBarActivity
{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.all_post);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        // Inflate menu to add items to action bar if it is present.
        inflater.inflate(R.menu.menu_main, menu);
        SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
        SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
        searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
        return true;
    }
}

Do something like this: 做这样的事情:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/tools">

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

    <item
        android:id="@+id/imgAdd"
        android:title="@string/CreatePost"
        android:orderInCategory="200"
        android:icon="@android:drawable/ic_menu_add"
        app:showAsAction="always"></item>

    <item
        android:id="@+id/menu_search"
        android:title="menu_search"
        android:orderInCategory="300"
        appcompat:actionViewClass="android.support.v7.widget.SearchView"
        app:showAsAction="always"/>

</menu>

With your menu.xml file. 用你的menu.xml文件。 You need change app:showAsAction="ifRoom" to appcompat:showAsAction="always" if you want icon show. 如果要显示图标,则需要将app:showAsAction =“ ifRoom”更改为appcompat:showAsAction =“ always” With menu item settings, you can use app:showAsAction="never" or appcompat:showAsAction="never" . 通过菜单项设置,您可以使用app:showAsAction =“ never”appcompat:showAsAction =“ never”

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/tools"
    xmlns:appcompat="http://schemas.android.com/apk/res-auto">

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

    <item
        android:id="@+id/imgAdd"
        android:icon="@android:drawable/ic_menu_add"
        android:orderInCategory="200"
        android:title="@string/CreatePost"
        appcompat:showAsAction="always"></item>

    <item
        android:id="@+id/menu_search"
        android:orderInCategory="100"
        android:title="menu_search"
        appcompat:actionViewClass="android.support.v7.widget.SearchView"
        appcompat:showAsAction="always"/>

</menu>

The menu items are arranged from left to right in ascending order of integer value of android:orderInCategory (ie 100,200,300... -> left to right). 菜单项以android:orderInCategory的整数值的升序android:orderInCategory (即100,200,300 ...->从左到右)。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM