Я пытался создать динамический c входной макет с использованием recyclerview. Я использовал подсказку в качестве строки ресурса, но в некоторых случаях подсказка приходит из серверной части как String . Итак, я хочу установить подсказку, используя условные операторы, как показано ниже.
Примечание: model.hint устанавливается для модели с использованием R.string.hint_of_some_input в качестве типа Integer
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/til"
style="@style/Widget.MaterialComponents.TextInputLayout.FilledBox.Dense"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@{model.hint==R.string.empty ? model.hintAsString : model.hint}"
Я установил значение hint пустым, когда hintAsString извлекается из бэкэнда, поэтому я думал, что смогу достичь своей цели. Он прекрасно отображает страницу, когда регистр hintAsString , но генерирует ошибку (java.lang.Integer cannot be cast to java.lang.CharSequence
) при отображении страницы с входными данными, используя подсказку из ресурсов. Ошибка настолько значима, но есть ли возможность обработать этот случай без создания нового компонента?