仅在 "search mode" 中工具栏中的 SearchView

SearchView in Toolbar only in "search mode"

我有 MainActivity 和 SearchAcitivty。当我单击 "Szukaj" ("Search") 时,我打开 SearchAcitivty:

当我打开 SearchActivity 时,它会显示一个列表,其中包含单击放大镜以在列表视图中搜索视图的选项。

我想 activity 立即开始 "search mode"(如点击放大镜) 或者,更重要的是,不要当用户点击后退按钮时不会回到列表,而是回到 MainActivity(Facebook 有这个功能)

提前感谢您的任何提示。

以编程方式,您可以在放大镜上注册点击并返回主 activity,在清单中设置为默认值 activity,然后在您的搜索中使用它 activity

actionBar.setDisplayHomeAsUpEnabled(true);

我必须将 MenuItem.OnActionExpandListener 添加到我的 MenuItem 以在 SearchView 折叠时完成 activity 并在开始时调用方法 menuItem.expandActionView() 展开 SearchView activity:

override fun onCreateOptionsMenu(menu: Menu?): Boolean {
    menuInflater.inflate(R.menu.search_menu, menu)
    val menuItem = menu?.findItem(R.id.searchIcon)
    menuItem.setOnActionExpandListener(this)
    menuItem.expandActionView()
    return true
}

override fun onMenuItemActionExpand(item: MenuItem?): Boolean {
    return true
}

override fun onMenuItemActionCollapse(item: MenuItem?): Boolean {
    finish()
    overridePendingTransition(0, 0)
    return true
}

希望对您有所帮助