【问题标题】:SearchView in Toolbar only in "search mode"工具栏中的 SearchView 仅在“搜索模式”下
【发布时间】:2020-04-21 10:27:44
【问题描述】:
我有 MainActivity 和 SearchAcitivty。当我点击“Szukaj”(“搜索”)时,我会打开 SearchAcitivty:
当我打开 SearchActivity 时,它会显示一个列表,其中包含单击放大镜以在列表视图中搜索视图的选项。
我想立即在“搜索模式”(点击放大镜)下开始活动,或者更重要的是,当用户点击返回按钮时不要返回列表,但是到 MainActivity(Facebook 有这个功能)
提前感谢任何提示。
【问题讨论】:
标签:
android
toolbar
searchview
【解决方案1】:
以编程方式,您可以在放大镜上注册一次点击并返回到主要活动,设置为清单中的默认活动,然后在您的搜索活动中使用它
actionBar.setDisplayHomeAsUpEnabled(true);
【解决方案2】:
我必须将 MenuItem.OnActionExpandListener 添加到我的 MenuItem 以在 SearchView 折叠时完成活动并调用方法 menuItem.expandActionView() 以在开始活动时展开 SearchView:
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
}
希望对你有帮助