【发布时间】:2020-01-29 07:29:56
【问题描述】:
我正在尝试通过获取静态数组将数据绑定应用到微调器。我对如何通过这种 MVVM 方法获取所选项目字符串感到困惑。请帮助我。您的帮助将不胜感激
这是我有微调器的 xml
<Spinner
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:entries="@array/service_type"
android:id="@+id/company_profile_grade_spinner"
/>
我真的不知道如何在我的视图模型中获取所选项目的值。
【问题讨论】:
-
String text = spinner.getSelectedItem().toString();将此文本发送到 viewmodelviewModel.spinnerSelectedText(text)并通过实时数据获取它viewModel.getSpinnerSelecetedtext().observe(this, string ->{}) -
但是如何在单击微调器项目时收到通知
-
viewModel.spinnerSelectedText(text) 在 viewmodel 的这个方法中更新 livedata 并观察这个 live data
-
你能帮我写代码吗?我第一次尝试更新它。第二次点击监听器未通知
-
使用
spinner.setOnItemSelectedListener内部监听器onItemSelected方法集再次设置为viewModel.spinnerSelectedText(text)
标签: android kotlin android-spinner android-databinding android-mvvm