Привязка данных к Android: как загрузить текстовый ресурс (без изменений)? - PullRequest
0 голосов
/ 08 октября 2019

В выражениях привязки данных Android можно ссылаться на строковый ресурс следующим образом:

@{@string/message}

Это переводится в код, который выглядит следующим образом:

getRoot().getResources().getString(R.string.message)

Обратите внимание, этовыборка строкового ресурса в виде String , так что охватывающая информация теряется. Например, если бы у меня было:

<b>Important:</b> Remember to...

, шрифт потерян. Если кто-то использует getText для извлечения той же строки, форматирование остается неизменным.

Существует ли синтаксис или трюк, которые заставят компилятор привязки данных генерировать код для извлечения строкового ресурса в виде CharSequenceString?

(То, что я пытаюсь сделать, это передать CharSequence в <include> -ый макет, используя привязку данных. Целевое поле - CharSequence, но данныекод привязки по-прежнему выбирает ресурс как String. Кроме того, поскольку целью является подкласс ViewDataBinding, а не View, пользовательский BindingAdapter не представляется возможным.)

...