在操作栏上添加图标而不是三个点

时间:2014-12-29 16:20:24

标签: android

我练习按照本指南http://developer.android.com/training/basics/actionbar/adding-buttons.html 但它没有显示图标"搜索"在行动栏上,它只是"搜索"我点击"三个点"后的字符串。如何删除三个点并在Action Bar上显示搜索图标?

我的应用程序是这样的,但没有搜索图标,但有一个"搜索"字符串在"三个点"

enter image description here

3 个答案:

答案 0 :(得分:4)

将此添加到您的菜单项:

    android:icon="@drawable/my_icon"
    app:showAsAction="ifRoom"

答案 1 :(得分:0)

你需要做的是使用true中的setHasOptionsMenu方法,如果使用片段,则覆盖onCreateOptionsMenu和onOptionsItemSelected。

@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    setHasOptionsMenu(true);
}

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.events_menu, menu);
    super.onCreateOptionsMenu(menu, inflater);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.action_search:
            openSearchView();
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}

这是菜单xml文件,在ActionBar上显示搜索选项:

<item
    android:id="@+id/action_search"
    android:icon="@drawable/ic_action_search"
    android:title="@string/search"
    app:showAsAction="always" />

答案 2 :(得分:-2)

您只需在其中添加以下属性android:showAsAction="never"即可删除3点菜单:

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

并在所有其他菜单项中使用app:showAsAction="always"

希望这有帮助!