Sobes.tech
Junior — Middle

Kā noteikt individuālo lietotāja saskarnes izkārtojumu Jetpack Compose?

sobes.tech AI

Atbilde no AI

Jetpack Compose lieto funkciju Layout, lai definētu individuālo lietotāja saskarnes izkārtojumu, kas ļauj patstāvīgi pārvaldīt bērnu elementu izvietojumu un izmēru.

Piemērs, kā izveidot pielāgotu komponistu:

@Composable
fun CustomLayout(
    modifier: Modifier = Modifier,
    content: @Composable () -> Unit
) {
    Layout(
        content = content,
        modifier = modifier
    ) { measurables, constraints ->
        // Mēra bērnu elementus
        val placeables = measurables.map { it.measure(constraints) }

        // Nosaka konteineru izmēru
        val width = placeables.maxOfOrNull { it.width } ?: constraints.minWidth
        val height = placeables.sumOf { it.height }

        layout(width, height) {
            var yPosition = 0
            placeables.forEach { placeable ->
                placeable.placeRelative(x = 0, y = yPosition)
                yPosition += placeable.height
            }
        }
    }
}

Šajā piemērā bērnu elementi izvietoti vertikāli viens zem otra. Šī pieeja nodrošina pilnīgu kontroli pār elementu izvietojumu UI.