在菜单中的SearchView自定义建议
我在我的menu
(工具栏)中有一个搜索searchview
。 它在我的回收视图中执行搜索查询,并且工作正常。 我需要添加一个自定义搜索建议到我的搜索searchview
,我找不到任何方法将其添加到默认的搜索searchview
菜单项。 我已经分享了我的菜单项和搜索查询的代码。
菜单XML文件:
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/actionSearch" android:title="" android:icon="@drawable/ic_search" app:actionViewClass="android.support.v7.widget.SearchView" app:showAsAction="always|collapseActionView"/> <item android:id="@+id/actionAdd" android:title="" android:icon="@drawable/ic_add" app:showAsAction="always|collapseActionView"/> <item android:id="@+id/actionImport" android:orderInCategory="100" android:title="Import from phone" app:showAsAction="never"/> <item android:id="@+id/actionExport" android:orderInCategory="100" android:title="Export as VCF" app:showAsAction="never" /> <item android:id="@+id/actionSettings" android:orderInCategory="100" android:title="Settings" app:showAsAction="never" /> </menu>
搜索查询:
private fun search(searchView: SearchView) { searchView.queryHint = "Search Here" searchView.setIconifiedByDefault(false) searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener { override fun onQueryTextSubmit(query: String): Boolean = false override fun onQueryTextChange(newText: String): Boolean { initRecentRecyclerView() mAdapter2.getFilter().filter(newText) recentAdapter.getFilter().filter(newText) return true }}) MenuItemCompat.setOnActionExpandListener(search, object : MenuItemCompat.OnActionExpandListener { override fun onMenuItemActionExpand(item: MenuItem): Boolean { initRecentRecyclerView() return true } override fun onMenuItemActionCollapse(item: MenuItem): Boolean { recentRecyclerView.visibility = View.GONE return true } }) searchView.setOnFocusChangeListener({ _: View, b: Boolean -> if(!b){ recentRecyclerView.visibility = View.GONE } }) searchView.setOnCloseListener{ recentRecyclerView.visibility = View.GONE true } searchView.setOnQueryTextFocusChangeListener({ view: View, b: Boolean -> if(!b){ try { recentRecyclerView.visibility = View.GONE }catch(e: Exception){} } }) }
actionSearch是我的searchView的id,searchView是我在我的kotlin
代码中使用的引用。 我需要在我的搜索searchview
显示建议列表。 希望有人能帮助我!
- 在kotlin中尝试makeSceneTransitionAnimation
- Kotlin anko通用选择器在提供的示例中不起作用
- Kotlin – 运算符'=='不能应用于'可编辑'! 和'String'比较字符串
- 保持Java中的BaseActivity与Kotlin Activity兼容
- SimpleDraweeView上的setImageURI:加载图像时的回调 – Android
- Kotlin不适用于Android Studio
- Kotlin“聪明的演员是不可能的,因为这个时候财产可能已经改变了”
- kotlin +特浓咖啡:找不到活动
- 错误:(42,13)无法解析:com.android.support:appcompat-v7:26.0.1