中心可在Jetpack中撰写

时间:2020-10-22 11:00:37

标签: android android-jetpack-compose

Jetpack的较早版本由dev-0.x组成,Center可以使小部件居中。

但是,在alpha版中,它已被删除,并且没有特定的组合物来处理此任务。

在我的情况下,我想在中心显示进度指示器,直到获取数据为止:

Surface(color = MaterialTheme.colors.background) {
    val state = viewModel.userState
    if (state == null) {
        CircularProgressIndicator()
    } else {
        UserDigest(state = state)
    }
}

结果显然是这样的:

enter image description here

指示器在拐角处。


fillMaxSize()添加到指标也无济于事:

CircularProgressIndicator(modifier = Modifier.fillMaxSize())

enter image description here

那么,如何将其(通常为composable)移动到区域中心?

1 个答案:

答案 0 :(得分:7)

使用容器。
例如:

Box(
   alignment = Alignment.Center,
   modifier = Modifier.fillMaxSize() ){
        CircularProgressIndicator(progress = 0.5f)
}

或:

Column(
        modifier = Modifier.fillMaxSize(),
        verticalArrangement = Arrangement.Center,
        horizontalAlignment = Alignment.CenterHorizontally
) {
    CircularProgressIndicator(progress = 0.5f)
}

enter image description here