没有 ActionBarActivity 的工具栏中的后退按钮

Back button in Toolbar without ActionBarActivity

我在 Fragment(覆盖整个屏幕)中使用 Toolbar,我想显示后退按钮,但我不能使用 getSupportActionBar().setDisplayHomeAsUpEnabled(true),因为我不使用 ActionBarActivity。

我需要一些可以与 API 9 一起使用的东西,所以我不能使用工具栏的 setNavigationIcon

Toolbar 实例上调用 setNavigationIcon(int)。来自文档:

Set the icon to use for the toolbar's navigation button.

The navigation button appears at the start of the toolbar if present. Setting an icon will make the navigation button visible.

如果你需要一个 ClickListener,你可以使用 setNavigationOnClickListener(View.OnClickListener)

就我而言,我使用以下代码:

public void showBackButton(final Runnable runnable) {
    toolbar.setNavigationIcon(getResources().getDrawable(R.drawable.abc_ic_ab_back_mtrl_am_alpha));
    toolbar.setNavigationOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            runnable.run();
        }
    });
}