android-jetpack-compose - ComposeView 与视图绑定
问题描述
我ComposeView
在我的 XML 布局文件中添加了一个。我在我的活动中使用视图绑定来扩充这个文件。当我尝试调用时binding.myComposeView.setContent { ... }
,我收到以下编译错误:Unresolved reference: setContent
. 当我查看生成的绑定文件时,myComposeView
isView
和 not的类型ComposeView
。当我使用时findViewById<ComposeView>(R.id.myComposeView).setContent { ... }
,一切正常。为什么绑定没有正确生成?我可以做些什么来使用带有 a 的视图绑定ComposeView
?
解决方案
事实证明,我有两个版本的相同布局:纵向和横向。LinearLayout
我通过将 a 替换为a将肖像转换为 Compose ComposeView
。但是,在横向布局myComposeView
中仍然是一个LinearLayout
. 这就是为什么创建的视图绑定类有一个myComposeView
type字段View
而不是ComposeView
. 具有相同 id 的视图在两个布局版本中具有不同的类型。
推荐阅读
- flutter - macos中的flutter应用默认路径是什么?
- amazon-web-services - 如何将 Amazon S3 连接到本地托管的 IBM 数据阶段服务器
- django - 我尝试在 CreateView 中创建权限
- c# - 是否使用类似于 if(dead ==false) 的 if(!dead)?
- c++ - 包含
导致以下编译错误:'fabsl': is not a member of '`global namespace' - r - 将所有缺失值放在数据框的右侧
- javascript - 函数中的默认参数指向 c++ unordered_map 中的引用
- r - 条件长度警告
- java - MojoExecutionException Maven
- vue.js - Vuetify 文本字段在首次加载时显示值和标签,因为自动填充