Jetpack Compose ConstraintLayout 中的嵌套片段

问题描述 投票:0回答:0

我正在使用 Compose 创建一个屏幕。我有一个现有片段,我正尝试使用 AndroidViewBinding 将其包含在我的可组合项中。

我正在尝试将此 AndroidViewBinding 嵌套在可组合的 ConstraintLayout 中。我遇到的问题是该片段出现在其他可组合项之上,并且它不遵守我通过修饰符传递给它的约束。

有谁知道如何将此 AndroidViewBinding 约束到 ConstraintLayout 中的其他可组合项?

这是我试过的。

@Composable
fun Screen() {
    ConstraintLayout(
        modifier = Modifier.fillMaxWidth()
    ) {
        val (section1, section2, fragmentIWantToAdd) = createRefs()
        Section1(
            modifier = Modifier
                .constrainAs(section1) {
                    top.linkTo(parent.top)
                    start.linkTo(parent.start, margin = 16.dp)
                    end.linkTo(parent.end, margin = 16.dp)
                },
            title = "Section1")
        Section2(
            modifier = Modifier
                .constrainAs(section2) {
                    top.linkTo(section1.bottom, margin = 16.dp)
                    start.linkTo(parent.start, margin = 16.dp)
                    end.linkTo(parent.end, margin = 16.dp)
                }
        )
        AndroidViewBinding(
            FragmentIWantToAddContainerBinding::inflate,
            Modifier.constrainAs(fragmentIWantToAdd) {
                top.linkTo(section2.bottom)
            }
        )
    }
}
android kotlin android-fragments android-jetpack-compose
© www.soinside.com 2019 - 2024. All rights reserved.