Slide 12
Slide 12 text
Fragment, BottomSheetのコード
// Fragment, BottomSheet両者で同じインスタンスを取得可能
viewModel =
ViewModelProviders.of(targetFragment, object : ViewModelProvider.Factory {
@Suppress("UNCHECKED_CAST")
override fun create(modelClass: Class): T =
FilterViewModel(useCase) as T
})
.get(FilterViewModel::class.java)
viewModel.selectedTags.observe(this, Observer {
// 通知された選択されたタグでリストをフィルタリング
adapter.items = filter(it)
})