【问题标题】:android jetpack compose kotlin synthetic extension support [duplicate]android jetpack compose kotlin 合成扩展支持
【发布时间】:2021-01-18 14:32:48
【问题描述】:

在集成到大型项目期间,我收到 Unbound symbols not allowed 编译器错误。它似乎不支持合成扩展。有没有办法将 compose 与合成扩展一起使用?我的项目太大而无法立即迁移并大量使用合成扩展。如果没有,您是否知道是否有计划很快提供支持?提前致谢。

e: java.lang.AssertionError: Unbound symbols not allowed
    Unbound public symbol for public kotlinx.android.synthetic.main.activity_normal/txt.<get-txt>|-845173590652748007[0]

【问题讨论】:

  • 不,它说删除所有 kotlinx 合成扩展,这对于大型项目来说确实很难。我的问题是有没有办法在一个项目中同时使用它们?
  • 我也有同样的问题。
  • 用视图绑定替换合成
  • 替换现有的合成绑定对我来说现在不是一个选项,我正在寻找一个我可以集成两者的解决方案。

标签: android kotlin android-jetpack android-jetpack-compose synthetic


【解决方案1】:

Synthetics are deprecated 所以没有计划在任何地方支持它们:你应该尽快migrate to ViewBinding(没那么难)

但是在 Compose 中支持它们实际上是没有意义的:因为 Compose 是声明式的而不是命令式的,所以你不使用 id 或任何“访问方法”,你可能需要rethink how to do things with Compose

也许试着解释一下你到底想做什么?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-10
    • 1970-01-01
    • 2021-08-08
    • 2022-07-16
    • 1970-01-01
    • 1970-01-01
    • 2021-08-20
    相关资源
    最近更新 更多