android - 如何在 XML 中定义小部件“Var”?(默认定义为“Val”)
问题描述
例如,我更改了 aTextView
的文本和使用 LiveData 的文本颜色,如下所示:
xxxViewModel.class
:
val textViewText = MutableLiveData<String>()
val textViewTextColor= MutableLiveData<Int>()
xxxFragment.class
:
xxxViewModel.textViewText.observe(viewLifecycleOwner) { binding.textView.text = it }
xxxViewModel.textViewTextColor.observe(viewLifecycleOwner) { binding.textView.color= it }
但是现在我需要更改 的几乎所有属性TextView
,所以我想也许我观察TextView
的是它本身,而不是它的属性,如下所示:
xxxViewModel.class
:
val textView = MutableLiveData<TextView>()
xxxFragment.class
:
// I got error here: says binding.textView is Val and cannot be reassign
xxxViewModel.textView.observe(viewLifecycleOwner) { binding.textView = it }
binding.textView
是在 XML 中定义的小部件,如何将其从 Val 更改为 Var?
解决方案
推荐阅读
- entity-framework-6 - 在 C# MVC 实体框架中创建和使用不在 EF 模型中的动态表
- sql-server - 检查两个无限区间是否重叠
- python - 如何根据当前日期使用 python Pandas 从 Excel 工作表加载特定工作簿
- magento2 - 同一服务器上网站的 Magento 2.3.2 到 2.3.5 升级
- reactjs - 如何禁用显示“未处理的拒绝(错误):XXXXX”的反应开发错误面板?
- javascript - React 中的异步/等待
- google-cloud-platform - Big Query 抛出“查询执行期间超出资源”
- mysql - MacOS 上 Sublime text 3 上的 MySQL
- database - 删除左连接postgres
- perl - perl 检查嵌套哈希引用