如何启用操作栏右侧的后退按钮?

时间:2016-07-02 11:19:48

标签: android android-actionbar

我想在操作栏的右侧添加一个后退箭头按钮。

我有以下代码,但它将后退按钮添加到操作栏的左侧。

ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true); 

3 个答案:

答案 0 :(得分:1)

您所做的是启用了点击/触摸事件的操作栏后退功能。如果你想要一个操作栏右侧的按钮,你可以做的最好/最简单的事情就是添加一个溢出菜单,你可以为它设置你想要的任何图标。

有很多关于如何执行此操作的教程(例如http://www.techotopia.com/index.php/Creating_and_Managing_Overflow_Menus_on_Android)。

要点如下。

  1. 为溢出菜单创建布局/项目(文件名应与第2步中的文件名匹配)。

    <menu xmlns:android="http://schemas.android.com/apk/res/android" >  
            <item  
                    android:id="@+id/menu_settings"  
                    android:orderInCategory="1"  
                    android:showAsAction="never"  
                    android:icon="@drawable/overflow_menu_icon"  
                    android:title="@string/menu_settings" />  
    </menu>  
    
  2. 在onCreateOptionsMenu()函数中初始化溢出,其中activity_menu_app是在上一步中创建的.xml文件的名称。

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.activity_menu_app, menu);
            return true;
    }
    
  3. 在onOptionsItemSelected()函数中捕获菜单项的触摸事件。

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
            switch (item.getItemId()) {
                    case R.id.menu_settings:
                            // do your stuff here
                            return true;
                    default:
                            return super.onOptionsItemSelected(item);
            }
    }
    

答案 1 :(得分:0)

请通过 - Back button is not working properly in Right side of action bar

如果您想在右侧添加后退箭头按钮 - 工具栏是在操作栏或上边栏中添加任何内容的最佳选项。

答案 2 :(得分:0)

首先,您需要初始化工具栏:

getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);

然后从actionBar调用后退按钮:

@Override
public boolean onSupportNavigateUp() {
    onBackPressed();
    return true;
}

最后,对这个方法,

{{1}}

从中收集解决方案 Link