Android:Activity中的JetpackCompose和XML
- 有人可以向我展示如何在同一活动中添加 jetpack 撰写 y xml。请举个例子
回答
如果要在 XML 文件中使用 Compose,可以将其添加到布局文件中:
<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!")
}
}
}
如果你想要相反的,在你的撰写中使用一个 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
}
)