Android 工具栏:启用默认向上按钮

Android Toolbar: Enable default Up button

我正在使用工具栏代替操作栏,我想继续为我的工具栏使用默认的向上图标。我相信这是 ic_menu_back 可绘制对象。但是,此资源似乎是私有的,因为我无法通过 android.R.drawable.ic_menu_back 访问它。

我是否必须手动提取此图像并将其放入我的可绘制文件夹中,或者有什么方法可以强制工具栏使用默认的向上按钮?

您可以在 activity 中这样做:

Toolbar mToolbar = (Toolbar) findViewById(R.id.toolbar);
mToolbar.setNavigationIcon(getResources().getDrawable(R.drawable.ic_action_back));

您需要将可绘制对象导入文件夹。

第二种方法是通过 styles.xml 只需添加这些项目:

<item name="homeAsUpIndicator">@drawable/ic_action_back</item>
<item name="drawerArrowStyle">@style/DrawerArrowStyle</item>

<style name="DrawerArrowStyle" parent="Widget.AppCompat.DrawerArrowToggle">
        <item name="spinBars">true</item>
        <item name="color">@android:color/white</item>
</style>

您可以使用 android.support.v7.widget.Toolbar:

Toolbar toolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

然后覆盖 onOptionsItemSelected(MenuItem item) 以处理箭头上的返回点击:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle item selection
    switch (item.getItemId()) {
        case android.R.id.home:
            finish();
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}