JetPack Compose - AnimatedVisibuble SlideinHorizontally Lazy Row Clipping ChildrenAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 JetPack Compose - AnimatedVisibuble SlideinHorizontally Lazy Row Clipping Children

Сообщение Anonymous »


У меня есть эффект LazyRow , и я хотел иметь эффект SlideInhorizontally с эффектом Bounce. Но ребенок справа всегда обрезан. Я вспомнил в XML, вы можете легко просто просто cliptobounds = false .
, но, казалось, не смог достичь того же эффекта с помощью Compose.slideInHorizontally(
initialOffsetX = { it },
animationSpec = spring(
dampingRatio = Spring.DampingRatioMediumBouncy,
stiffness = Spring.StiffnessLow
)
)

code
val cards = (1..52).map { it.toString() }
val lazyListState = rememberLazyListState()

Box(
modifier = Modifier.fillMaxSize(),
contentAlignment = Alignment.Center
) {
var visible by remember { mutableStateOf(false) }
LaunchedEffect(Unit) { visible = true }

AnimatedVisibility(
visible = visible,
enter = slideInHorizontally(
initialOffsetX = { it },
animationSpec = spring(
dampingRatio = Spring.DampingRatioMediumBouncy,
stiffness = Spring.StiffnessLow
)
),
) {
LazyRow(
modifier = Modifier.align(Alignment.BottomCenter),
state = lazyListState,
contentPadding = PaddingValues(16.dp),
horizontalArrangement = Arrangement.spacedBy(12.dp),
flingBehavior = ScrollableDefaults.flingBehavior(),
) {
items(cards) { card ->
Card(
modifier = Modifier.size(width = 150.dp, height = 210.dp),
shape = RoundedCornerShape(8.dp),
colors = CardDefaults.cardColors(containerColor = MaterialTheme.colorScheme.onPrimaryContainer)
) {
Box(
modifier = Modifier.fillMaxSize(),
contentAlignment = Alignment.Center
) {
Text(card, color = MaterialTheme.colorScheme.onPrimary)
}
}
}
}
}
}


Подробнее здесь: https://stackoverflow.com/questions/796 ... ping-child
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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