Android:Jetpack Compose和活动中的XML 有人可以向我展示如何在同一个页面中添加jetpack和xml 活动。请举个例子

Android:Jetpack Compose和活动中的XML 有人可以向我展示如何在同一个页面中添加jetpack和xml 活动。请举个例子,android,kotlin,android-jetpack,android-jetpack-compose,Android,Kotlin,Android Jetpack,Android Jetpack Compose,如果要在XML文件中使用组合,可以将其添加到布局文件中: <androidx.compose.ui.platform.ComposeView android:id="@+id/my_composable" android:layout_width="wrap_content" android:layout_height="wrap_content" /> 然后,设置内容: findViewByI

如果要在XML文件中使用组合,可以将其添加到布局文件中:

<androidx.compose.ui.platform.ComposeView
    android:id="@+id/my_composable"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

然后,设置内容:

findViewById<ComposeView>(R.id.my_composable).setContent {
    MaterialTheme {
        Surface {
            Text(text = "Hello!")
        }
    }
}
findViewById(R.id.my_composable).setContent{
材料学{
表面{
Text(Text=“Hello!”)
}
}
}
如果您想要相反的结果,请在撰写中使用XML文件,您可以使用以下方法:

    AndroidView(
        viewBlock = { context: Context ->
            val view =
                LayoutInflater.from(context)
                    .inflate(R.layout.my_layout, null, false)

            val textView = view.findViewById<TextView>(R.id.text)
            // do whatever you want...
            view // return the viw
        },
        update = { view ->
            // Update view
        }
    )
AndroidView(
viewBlock={context:context->
瓦尔视图=
LayoutFlater.from(上下文)
.充气(R.layout.my_布局,空,假)
val textView=view.findViewById(R.id.text)
//你想做什么就做什么。。。
查看//返回viw
},
更新={查看->
//更新视图
}
)

要嵌入XML布局,请使用API,该API由
androidx.compose.ui:ui viewbinding
库提供。为此,项目必须启用视图绑定。 AndroidView与许多其他内置可组合程序一样,采用了一个修改器参数,例如,可以使用该参数设置其在父可组合程序中的位置


请在此处附上有关问题的代码!
@Composable
fun AndroidViewBindingExample() {
    AndroidViewBinding(ExampleLayoutBinding::inflate) {
        exampleView.setBackgroundColor(Color.GRAY)
    }
}