#Por que ocurre ese error?
1 messages · Page 1 of 1 (latest)
Por que no estas usando hilt?
te podrias ahorrar esto:
viewModel.getPokemonList()
}
si en el viewModel tienes algo como esto:
val backendState: StateFlow<BackendState> = _backendState.asStateFlow()
deberias usar esto en la screen:
en lugar de solo un collectAsState()
otra cosa, en lugar de hacer
if() ...
else if() ...
else....
podrias dejarlo mas limpio:
AnimatedVisibility(
visible = isVisible,
enter = fadeIn(),
exit = fadeOut(),
) {
Box(
contentAlignment = Alignment.Center,
modifier = Modifier.fillMaxSize(),
) {
CircularProgressIndicator(
modifier = Modifier.size(size),
color = color,
)
}
}
// El resto del código del Box()...
No necesitas concatenar if elses
y ahora resolviendo tu duda, el HorizontalPager ya te va a dar un PagerScope y el numero de pagina para que pintes el elemento en cuestion para esa pagina. Tu estas pintando una ListaLazyRow para cada elemento....
no se que tiene ese componente ListaLazyRow, pero me da la sensación que es la lista completa, es decir, para cada elementos estas pintando la lista de todos los elementos
en lugar del que toca para esa pagina
en lugar de
ListaLazyRow(navController = navController, dragonList = dragonList)
haz algo como:
AsyncImage(
model = ImageRequest.Builder(LocalContext.current).scale(Scale.FILL).crossfade(true).data(dragonList[page],
contentDescription = "Image",
contentScale = ContentScale.Crop,
)
Muchas gracias, no se si tengas tiempo ahorita de meternos a u. Canal y lo podamos resolver?
Le intentado el cambio que te comentaba? A ver si funciona?
he intentado, pero no funciona
ademas quiero mostrarte todo el codigo