Saltar al contenido

DrawerNavigator: Cambiar el color del texto

Solución:

Una búsqueda en Google me llevó aquí, pero la respuesta no pudo resolver mi problema: quería cambiar el color del texto pero que cambiara entre diferentes colores dependiendo de si estaba activo o inactivo. Cambiar el estilo de etiqueta de colorin aseguró efectivamente que las etiquetas sean del mismo color independientemente del estado. Entonces usé los colores de tinte en las opciones de contenido del cajón.

    export const DrawerStack = DrawerNavigator(
  {... /drawer items}
 ,
  {
    contentOptions: {
      activeTintColor: colors.primary,
      activeBackgroundColor: 'transparent',
      inactiveTintColor: 'black',
      inactiveBackgroundColor: 'transparent',
      labelStyle: {
        fontSize: 15,
        marginLeft: 10,
      },
    },
    drawerWidth: SCREEN_WIDTH * 0.7,
    drawerOpenRoute: 'DrawerOpen',
    drawerCloseRoute: 'DrawerClose',
    drawerToggleRoute: 'DrawerToggle',
  }
);

De esta manera puedo alternar colores dependiendo de si un elemento del cajón está activo o no usando el activeTintColor and inactiveTintColor opciones.

En lugar de style necesitas usar labelStyle dentro de contentOptions. Como esto:

contentOptions: {
  labelStyle: {
    fontFamily: 'SomeFont',
    color: 'white',
  },
}

Para cualquiera que esté usando Navigation V5, deberá seguir el método a continuación y hacerlo al inicializar el navegador del cajón.

      <Drawer.Navigator
        drawerContentOptions={{
          activeTintColor: 'red',
          activeBackgroundColor: 'grey',
          inactiveTintColor: 'blue',
          inactiveBackgroundColor: 'white',
          labelStyle:{
            marginLeft:5
          }
        }}>
  </Drawer.Navigator>

Puede consultar los documentos para obtener más accesorios https://reactnavigation.org/docs/drawer-navigator/#drawercontentoptions

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *