В настоящее время у меня есть интерфейс, реализованный в MainActivity , который позволяет осуществлять связь с NumberFragment . onCountClicked - это метод NumberFragment , который получает идентификатор щелчка элемента.
Вопрос
Как я могу отправлять позицию onCountClicked в NumberFragmentViewModel при каждом нажатии элемента?
Примечание. Использование привязки данных и повторного просмотра
Основная деятельность
val newFragment = NumberFragment()
val args = Bundle()
args.putInt(NumberFragment().onCountClicked(data).toString(),data.toInt())
newFragment.arguments = args
Фрагмент номера
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
val sleepTrackerViewModel =
ViewModelProviders.of(
this, viewModelFactory).get(NumberViewModel::class.java)
setHasOptionsMenu(true)
binding.setLifecycleOwner(this)
binding.sleepTrackerViewModel = sleepTrackerViewModel
//Observes for any changes on database and updates the UI
sleepTrackerViewModel.dbCount.observe(this, Observer {dbCount ->
dbView.text = dbCount.number.toString()
})
return binding.root
}
fun onCountClicked(position: Long) {
Log.i("NumberF" , "------------->" + position)
}