Skip to content

Instantly share code, notes, and snippets.

@AmaroNeto
Last active January 23, 2020 21:05
Show Gist options
  • Save AmaroNeto/e1724bb593a34a36087790113722d588 to your computer and use it in GitHub Desktop.
Save AmaroNeto/e1724bb593a34a36087790113722d588 to your computer and use it in GitHub Desktop.
GenericActivity
class MainActivity: AppCompatActivity(), GenericAdapter.AppAdapterListener<Movie> {
private lateinit var recyclerView: RecyclerView
private lateinit var searchView: SearchView
private var adapter: GenericAdapter<Movie>? = null
// ...
private fun setupAdapter(movies: List<Movie>) {
adapter = GenericAdapter<Movie>(movies)
adapter?.listener = this
recyclerView.adapter = adapter
}
override fun onItemClick(model: Movie, position: Int) {
//Do what you want with the object
}
//...
private fun setupSearch(menu: Menu?) {
val searchManager = getSystemService(Context.SEARCH_SERVICE) as SearchManager
searchView = menu?.findItem(R.id.app_bar_search)
?.actionView as SearchView
searchView.setSearchableInfo(searchManager
.getSearchableInfo(componentName))
searchView.maxWidth = Integer.MAX_VALUE
searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener {
override fun onQueryTextSubmit(query: String): Boolean {
adapter?.filter?.filter(query)
return false
}
override fun onQueryTextChange(query: String): Boolean {
adapter?.filter?.filter(query)
return false
}
})
}
// ...
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment