我想在一个fun中创建一个自定义可组合对象,然后将该可组合对象添加到另一个fun中,该fun包含我的主ConstraintLayout以及布局的所有可组合对象。当我尝试这样做时,我遇到了约束问题,我将可组合对象放入ConstraintLayout中,但它卡在左上角/开始角。
- 如何正确地将约束添加到这个构建的可组合对象中,并将来自另一个fun的约束添加到我的主ConstraintLayout fun中?**
我的代码:
@Composable
fun MainConstraintLayout() {
ConstraintLayout {
val (view1, view2) = createRefs()
Button(onClick = { /*....*/ },
modifier = Modifier.constrainAs(view1) {
top.linkTo(parent.top)
start.linkTo(parent.start)
end.linkTo(parent.end)
}
) { Text("view1, correct constraints") }
// How can I constraint this view (below) to the bottom of view1?
MyOneComposable()
}
}
@Composable
fun MyOneComposable() {
Button(onClick = { /*....*/ }) {
Text(text = "My one composable button")
}
}
1条答案
按热度按时间oxiaedzo1#
您需要将
Modifier
参数传递到MyOneComposable
中:因此,您可以从
ConstraintLayout
应用ref修改器: