보통 Android 에서 검색 기능을 구현할 때, ToolBar 안에 검색 창을 구현하는 방법을 사용한다.
EditText 와 Button 을 사용하여 검색기능을 구현할 수도 있지만, 이번에는 SearchView 를 다루는 방법을 작성하였다.
<androidx.appcompat.widget.SearchView
android:id="@+id/search"
android:layout_width="match_parent"
android:layout_height="100dp"
android:focusable="true"
android:padding="20dp"
app:iconifiedByDefault="false"
app:layout_constraintBottom_toTopOf="@id/search_result"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_weight="1"
app:queryHint="검색어를 입력하시오" />
private fun initSearchView() {
// init SearchView
binding.search.isSubmitButtonEnabled = true
binding.search.setOnQueryTextListener(object : SearchView.OnQueryTextListener {
override fun onQueryTextSubmit(query: String?): Boolean {
// @TODO
return false
}
override fun onQueryTextChange(newText: String?): Boolean {
// @TODO
return true
}
})
}