Android: Как отобразить несколько значений в одном и том же TextView, используя dataBinding? - PullRequest
0 голосов
/ 17 апреля 2020

Привет всем: у меня есть 1 TextView и 4 разных нажимаемых кнопки, которые выбирают данные, которые я пытаюсь отобразить в этом TextView.

Таким образом, каждый раз при нажатии кнопки данные должны выбираться и отображаться. Проблема в том, что когда я использую привязку данных, я в значительной степени «жестко кодирую» данные, которые я получаю от «вызова» в xml, например:

android: text = "@ {viewModel.triviaAnswer } "

Итак, что насчет других значений из ViewModel? Как отобразить их в том же TextView?

Я пробовал xml троичные операторы и тому подобное, но пока это мало помогло ...

Другими словами, идея состоит в том, чтобы нажмите кнопку 1, получите данные, отобразите их. Нажмите кнопку 2, получите данные и отобразите в том же текстовом представлении. И так далее ... Я хочу как-то повторно использовать этот TextView.

Как бы вы подошли к этой проблеме. Я предполагаю, что самое простое, это просто иметь разные textView для каждого вызова onClick и скрывать / показывать их при необходимости.

Можете ли вы придумать что-нибудь полезное в этом случае?

Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 17 апреля 2020

Лучший способ сделать это - повторно использовать ваш viewModel.triviaAnswer. Скажем, это строка, затем присваиваем значение этой строке. Например, если я нажму кнопку 1, строковое значение viewModel.triviaAnswer станет «один», для кнопки 2 viewModel.triviaAnswer станет «два» и так далее ...

0 голосов
/ 17 апреля 2020

Самый простой и лучший способ заставить ваши кнопки изменить одну переменную ViewModel viewModel.triviaAnswer, вот и все

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...