【问题标题】:Back navigation icon is not shown in ToolBar with SearchView in android后退导航图标未显示在工具栏中,Android 中的 SearchView
【发布时间】:2016-01-07 13:04:49
【问题描述】:

我已经更新了 google play 服务。在更新之前,我使用的是 ActionBar,一切都很好。但是在更新播放服务后,我正在使用 ToolBar。现在,当我单击操作栏上的搜索图标时,会显示 SearchView,但后退导航图标不可见。但是当我点击导航按钮的位置时它仍然可以使用,即它会返回。

请参阅随附的屏幕截图。

那么请建议我如何显示这个后退导航按钮。

【问题讨论】:

  • 添加您的代码以帮助您
  • 您能找到解决方案吗?

标签: android navigation toolbar back


【解决方案1】:

我没有在搜索 (API 23) 中尝试过这个

在方法 onCreate(...) 中添加这个

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

然后这样做

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();
    if (id == android.R.id.home) {
        super.onBackPressed();
        return true;
    }
    return super.onOptionsItemSelected(item);
}

【讨论】:

  • @Sushil。感谢您的回答。但我使用的是工具栏而不是操作栏。
【解决方案2】:

回复很晚,但我也遇到了这个问题,并设法在我的代码库中解决它。

这是因为Toolbar 将导航图标替换为自己的折叠图标。您需要将 XML 中的定义更改为如下所示,其中包含 collapseIcon 属性。

<Toolbar
  android:id="@+id/toolbar"
  android:layout_width="match_parent"
  android:layout_height="@dimen/my_toolbar_height"
  android:background="?attr/colorPrimary"
  app:collapseIcon="@drawable/my_back_icon" />

理想情况下,实现会尝试使用navigationIcon 属性,但情况似乎并非如此。

【讨论】: