Paleta de colores con hooks en React Native
Clase 8 de 23 • Curso de Fundamentos de React Native
Contenido del curso
Módulo 2: Construcción de la Interfaz de Usuario
- 5

Uso de constantes y condicionales en archivos TSX de React Native
10:36 min - 6

Componentes reutilizables en React Native
14:50 min - 7

StyleSheet y Flexbox en React Native
11:24 min - 8

Paleta de colores con hooks en React Native
Viendo ahora - 9

useState para interfaces dinámicas en React Native
12:12 min - 10

Estado interactivo en React Native con useCallback
13:24 min - 11

Pressable vs TouchableOpacity en React Native
09:37 min
Módulo 3: Interactividad y Manejo de Datos
- 12

Crear un carrusel con ScrollView horizontal
10:51 min - 13

Diferencias entre ScrollView y FlatList para listas grandes
09:47 min - 14

Instalación de Async Storage para persistencia de datos en React Native
14:54 min - 15

Context y Provider para estado global de hábitos
12:08 min - 16

Context y provider para persistir hábitos en React Native
13:19 min - 17

React Native: Provider de animación con confetti
11:58 min - 18

Cómo crear una ExploreCard específica para iOS y Android
09:48 min - 19

Implementación del tab Explore con FlatList y carga asíncrona
12:49 min - 20

Contexto de perfil con persistencia y avatar aleatorio usando IA
12:32 min - 21

Cámara y galería en React Native
16:01 min
Módulo 4: Visualización de Listas y Contenido
Personaliza el modo oscuro y la paleta de colores en React Native con un enfoque práctico. Aquí verás cómo conectar los hooks de tema con componentes reutilizables como ThemeText y ThemeView para lograr una UI coherente, accesible y fácil de mantener.
¿Cómo activar el modo oscuro con hooks de temas en React Native?
El comportamiento dinámico de colores depende del sistema de temas de React Native y su integración con el modo oscuro del dispositivo. Al cambiar entre light y dark, los tabs y vistas como explore se actualizan automáticamente gracias a los hooks de tema.
- Define una paleta de colores en
constants/themey ajústala a tu marca. - Usa tipografías por plataforma: fuentes por defecto para iOS y variantes específicas para web.
- Conecta el color del sistema operativo mediante un hook de tema que reacciona al estado del dispositivo.
- Aprovecha componentes base ThemeText y ThemeView con propiedades
lightColorydarkColorpara alternar estilos sin duplicar lógica.
Idea clave: configura colores y tipografías en un solo lugar, y deja que el hook gestione el cambio de tema.
¿Cómo crear un componente reutilizable con paleta personalizada?
Se construye un ProfileHeader.tsx dentro de components para mostrar nombre y rol de la persona usuaria. Este componente ilustra cómo consumir la paleta, aplicar estilos con Flexbox y generar iniciales para un avatar circular.
¿Cómo obtener colores con use theme color?Idea clave: usa nombres semánticos como card, primary y onPrimary para desacoplar diseño y lógica.
¿Cómo maquetar con view, Flexbox y StyleSheet?
Combina estilos de layout con color dinámico. El contenedor usa backgroundColor de la paleta y el avatar un círculo con el color primario.Idea clave: mezcla styles estáticos para layout con colores del tema en línea, sin duplicar estilos.
¿Cómo generar iniciales del nombre en TypeScript?
Crea una constante para obtener iniciales a partir del nombre: separa por espacios, toma la primera letra de cada palabra y conviértela a mayúsculas.Luego úsala dentro del avatar:Idea clave: prepara datos en constantes antes del render para mantener JSX limpio y legible.
¿Cómo integrarlo en la pantalla e impulsar la UI dinámica?
Integra el componente en la pantalla, importa y pasa las props name y role. Reemplaza Text por ThemeText en el resto de la interfaz para heredar el modo oscuro automáticamente. Como reto, cambia View por ThemeView y asigna colores por tema directamente.Usa ThemeText en mensajes como “buenas tardes” y el saludo principal.
- Ajusta
lightColorydarkColoren ThemeView para el fondo. - Centraliza la paleta en
constants/themepara mantener consistencia.
¿Tienes dudas, ideas o una paleta preferida? Comparte en comentarios cómo aplicarás ThemeView y qué estilos sumarás a tu UI.