android - 如何在布局中使用视图绑定和视图模型?
问题描述
我正在尝试在布局中将 viewBinding 与 viewmodel 一起使用。在布局中不使用 viewmodel 时,我可以使用 viewBinding。但是在xml中添加布局标签时问题就开始了。之后我不能给 ActivityMainBinding 充气。如何解决?那不可能将viewmodel与viewBinding一起使用吗?
错误
Check your module classpath for missing or conflicting dependencies
主要活动
lateinit var binding : ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
//tried but not working
/* val viewGroup = findViewById<ViewGroup>(android.R.id.content)
val view = layoutInflater.inflate(R.layout.activity_main,viewGroup,false)
binding = ActivityMainBinding.bind(view)
setContentView(binding.root)*/
binding = ActivityMainBinding.inflate(layoutInflater)
}
活动主
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<import type="android.view.View" />
<variable
name="viewModel"
type="com.haii.graphqldemo.MainViewModel"/>
</data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/main_layout">
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
解决方案
对不起,我忘了添加 build.gradle(app)
dataBinding {
enabled = true
}
推荐阅读
- javascript - 使用 getstream.io 发起一对一聊天时出错
- javascript - 内部没有 await 关键字的异步函数
- elasticsearch - 寻找一个 kafka 连接器来将数据插入到 elasticsearch
- javascript - 根据具有不同数据类型的两个键对对象数组进行升序排序
- c++ - 在 C ++ 中编辑文本文件、定义破折号、添加/删除空格时出现问题
- css - 添加修复类时的角度平滑滚动
- python - 如何使用 ctypes.util.find_library 在 AWS lambda (python) 中导入 .so 库?
- bash - Date utils 日期差异管道
- karate - 使用空手道定位器定位标签元素
- c - 从链表中去除无序