# Problemas de renderizado

> La pantalla no refleja el código — render bajo demanda, alpha, invalidación de layout, GPU débil.

Source: https://crossfly.dev/es/docs/troubleshooting/render — CrossFly documentation. Full docs as one file: https://crossfly.dev/llms-full.txt

# Problemas de renderizado

La pantalla no refleja lo que hizo el código. Formato: **síntoma → causa → corrección**.

## "Cambié un valor y la pantalla no se actualiza"
**Causa:** el render es **bajo demanda** — CrossFly solo redibuja cuando se lo solicita.
**Corrección:** llama a `Component.repaint()`; si cambiaste tamaño/posición "por fuera", también
`setValidLayout(false)` (la mayoría de los setters del framework ya lo hacen; lo que cambias manualmente,
no). (Cap. 4 §4.6)

## El color definido desaparece / el componente queda invisible
**Causa:** el color es `int` ARGB `0xAARRGGBB` y usaste `0xRRGGBB` (alpha 0).
**Corrección:** prefija `0xFF…`.
```java
// 0x2196F3  → invisible (alpha 00)
// 0xFF2196F3 → azul opaco
```
(Cap. 11 — Colores)

## El layout no recalcula tras cambiar los hijos
**Causa:** faltó invalidar el layout.
**Corrección:** `container.setValidLayout(false);` + `Component.repaint();`.

## La UI se traba / muestra dientes de sierra en un device antiguo
**Causa:** GPU débil.
**Corrección:** revisa **`Screen.slowGPU`** y reduce sombras/gradientes/efecto glass en ese caso.
(Cap. 8 — Rendering)

## Cambié el tema, pero los componentes antiguos no
**Causa:** la caché de estilo se re-resuelve por `styleVersion` (los colores `PalColor` se re-resuelven en el
próximo frame) — normalmente automático al `setColorScheme`/`setDarkMode`.
**Corrección:** si algo no acompañó, fuerza `restyle()` en la ventana o `Component.repaint()`.
([Modo claro/oscuro](/docs/ui/theming/dark-mode))

## Ver también
- [Errores de runtime](/docs/troubleshooting/runtime) · Concepto: [El pipeline de renderizado](/docs/concepts/rendering-pipeline)
