Jetpack Compose 互操作中 ViewCompositionStrategy 之间的差异

Sma*_*mer 10 android android-jetpack-compose

ViewCompositionStrategy在 Jetpack compose 中使用Compose ViewXML时有什么区别?

https://developer.android.com/jetpack/compose/interop/interop-apis#composition-strategy https://developer.android.com/reference/kotlin/androidx/compose/ui/platform/ViewCompositionStrategy

ViewCompositionStrategy当以下情况时需要什么:

  1. <ComposeView>在活动布局中
  2. <ComposeView>在片段布局中
  3. <ComposeView>在片段中的自定义视图中(我假设与上面相同?)
  4. 活动/片段/自定义视图中的纯撰写视图(无 XML)?

can*_*ler 0

对于 Fragment,您可以使用以下策略:

setViewCompositionStrategy(
        ViewCompositionStrategy.DisposeOnLifecycleDestroyed(viewLifecycleOwner)
)
Run Code Online (Sandbox Code Playgroud)

根据此文档,您可以使用以下策略进行活动:

setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnDetachedFromWindow)
Run Code Online (Sandbox Code Playgroud)