Увеличить элемент LazycolumnAndroid

Форум для тех, кто программирует под Android
Anonymous
Увеличить элемент Lazycolumn

Сообщение Anonymous »

Я пытаюсь приблизиться к элементу в ленивой колонке. Я пробовал разные способы, но у всех есть проблема, и я не знаю, как ее исправить. С первой попытки я попытался масштабировать и обнаружить жест на изображении, но потерял возможность прокручивать список, и второй элемент перекрылся.
Во второй попытке я поместил изображение в коробку, чтобы оно увеличиваться при увеличении, и изображение адаптируется к рамке. Теперь второй элемент не перекрывается при масштабировании, но я не могу прокручивать.
Есть ли способ масштабировать и прокручивать список, не перекрывая элементы?
Спасибо
Попробуйте 1

var scale = remember { mutableStateOf(1f) }

LazyColumn(
modifier = Modifier
.fillMaxSize()
) {
items(items = list) { item ->

if (item != null) {

Image(
modifier = Modifier
.fillMaxSize()
.pointerInput(Unit) {
detectTransformGestures { _, _, zoom, _ ->
scale.value *= zoom

}
}
.graphicsLayer {
scaleX = maxOf(1f, minOf(3f, scale.value));
scaleY = maxOf(1f, minOf(3f, scale.value))
}, bitmap = item, contentDescription = ""
)
}

}
}


Попробуйте 2
var scale = remember { mutableStateOf(1f) }

Box(modifier = Modifier
.fillMaxSize()
.graphicsLayer {
scaleX = maxOf(1f, minOf(3f, scale.value));
scaleY = maxOf(1f, minOf(3f, scale.value))
}) {

LazyColumn(
modifier = Modifier
.fillMaxSize()
) {
items(items = list) { item ->

if (item != null) {

Image(
modifier = Modifier
.fillMaxSize().pointerInput(Unit) {
detectTransformGestures { _,_, zoom, _ ->
scale.value *= zoom

}
}, bitmap = item, contentDescription = ""
)
}

}
}
}



Подробнее здесь: https://stackoverflow.com/questions/693 ... olumn-item

Вернуться в «Android»