首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有视图绑定的ComposeView

具有视图绑定的ComposeView
EN

Stack Overflow用户
提问于 2021-10-06 19:47:41
回答 2查看 2.1K关注 0票数 1

我在XML布局文件中添加了一个ComposeView。在我的活动中,我使用视图绑定来膨胀这个文件。当我试图调用binding.myComposeView.setContent { ... }时,我会得到以下编译错误:Unresolved reference: setContent。当我查看生成的绑定文件时,myComposeView的类型是View,而不是ComposeView。当我使用findViewById<ComposeView>(R.id.myComposeView).setContent { ... }时,一切都很好。为什么绑定没有正确生成?如何使用与ComposeView的视图绑定

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-11-08 20:04:20

原来我有两个版本的相同的布局:肖像和水平。我把肖像画转换成一幅,用LinearLayout代替了ComposeView。但是,在水平布局中,myComposeView仍然是一个LinearLayout。这就是为什么创建的视图绑定类有一个类型为myComposeView的字段View,而不是ComposeView。在两个布局版本中,具有相同id的视图具有不同的类型。

票数 4
EN

Stack Overflow用户

发布于 2021-10-07 11:02:18

在您的活动的onCreate中设置绑定的方式可能有问题。您是否使用了以下代码的代码?:

代码语言:javascript
复制
override fun onCreate(savedInstanceState: Bundle?) {
  super.onCreate(savedInstanceState)
  binding = ActivityMainBinding.inflate(layoutInflater)
  val view = binding.root
  setContentView(view)

  binding.composeView.setContent {
    MaterialTheme {
      Text(text = "Hello World")
    }
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69471887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档