Могу ли я использовать Material3 AutoCompleteTextView с множеством параметров и двусторонней привязкой данных в Android?Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Могу ли я использовать Material3 AutoCompleteTextView с множеством параметров и двусторонней привязкой данных в Android?

Сообщение Anonymous »

Я использую двустороннюю привязку данных Android для фрагмента формы с соответствующей моделью представления. Я использую объект Observer в ViewModel, который расширяет BaseObservable, чтобы использовать аннотацию @Bindable, и до сих пор он отлично работал для TextInputEditTexts и MaterialSwitches. Проблема, с которой я столкнулся сейчас, заключается в том, что при использовании AutoCompleteTextView (внутри TextInputLayout) для поведения счетчика я не могу заставить его работать.
Макет: ViewModel:

Код: Выделить всё

@Bindable
public StringValue getMeshChannel() {
IntegerValue meshChannel = currentDevice.getMeshChannel();
return new StringValue(String.valueOf(meshChannel.getValue()), meshChannel.isReadOnly(), meshChannel.isBasic());
}

public void setMeshChannel(String value) {
if(!String.valueOf(currentDevice.getMeshChannel().getValue()).equals(value)){
currentDevice.setMeshChannel(Integer.parseInt(value));
notifyPropertyChanged(BR.meshChannel);
}
}
Я попробовал app:simpleItems='@array/device.parameter.mesh.channel.values', и значения установлены правильно, но мне нужно показать Начальное значение. Для этого я использовал android:text="@={device_vm.observer.meshChannel.value}", и он устанавливает значение правильно, но при этом другие значения удаляются из массива, установленного в simpleItems.
Я также пробовал установить значение с помощью кода во фрагменте, например этот deviceBinding.tvMeshChannel.setText(String.valueOf(deviceViewModel.getCurrentDevice().getMeshChannel().getValue()), false);< /code>, чтобы не удалять другие значения, но всякий раз, когда я меняю значение, объект в модели представления не обновляется, поэтому я думаю, что при этом мне не хватает двусторонней привязки.

Подробнее здесь: https://stackoverflow.com/questions/787 ... two-way-da
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»