Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Patrones y componentes

En Android 8.0, el menú Configuración tiene varios componentes y widgets que cubren usos comunes. Se recomienda a los fabricantes y desarrolladores de dispositivos que utilicen los componentes comunes al ampliar la aplicación Configuración para que las nuevas interfaces de usuario se mantengan coherentes con la interfaz de usuario de Configuración existente.

A continuación, se muestra un resumen de las mejoras:

  • Cambio de comportamiento del divisor en el marco de preferencias de la biblioteca de soporte. El divisor ahora se dibuja entre categorías.
  • Cambio de tema de ActionBar. ActionBar ahora usa un tema de color claro, con texto de color de acento.
  • Nuevo diseño de preferencias. El espacio para los íconos permanece incluso cuando una preferencia no tiene ícono.

Nuevos widgets:

  • Un widget de encabezado para los detalles de la aplicación. Muestra el icono de la aplicación, la etiqueta de la aplicación y otra información.
  • Un botón de expansión en algunas páginas. La página puede comenzar como contraída y ocultar elementos menos importantes hasta que el usuario haga clic en el botón expandir.
  • IU predeterminada del selector de aplicaciones:
    • La interfaz de usuario para elegir el navegador predeterminado, la aplicación de teléfono predeterminada, etc.
    • Anteriormente un cuadro de diálogo, ahora es una interfaz de usuario basada en botones de opción de pantalla completa.
  • Una preferencia de estilo "MasterSwitch". Esta es una preferencia con dos destinos de clic. El objetivo izquierdo conduce a un fragmento o intento de subconjunto. El objetivo derecho es un interruptor de palanca, que controla el encendido / apagado de toda la página.

Ejemplos y fuente

  • Comportamiento divisor
    • Todas las páginas de Configuración se modifican para utilizar el nuevo comportamiento del divisor.
    • El comportamiento del divisor se define como ThemeOverlay en:
      packages/apps/Settings/res/values/styles_preference.xml
  • Cambio de tema de ActionBar
    • Todas las páginas de Configuración se modifican para usar el nuevo tema ActionBar.
    • El tema se define en Theme.DeviceDefault.Settings
  • Nuevo diseño de preferencias
    • Muchas páginas de Configuración ahora usan el nuevo diseño de preferencias.
    • Puedes encontrar el código en:
      packages/apps/Settings/res/values/styles_preference.xml
  • Widget de encabezado de la aplicación
    • La mayoría de las páginas de información de la aplicación en Configuración ya están implementando el nuevo encabezado de la aplicación.
    • Se pueden encontrar ejemplos y código en:
      packages/apps/Settings/src/com/android/settings/applications/AppHeaderController.java
  • Botón de expansión
    • Se pueden encontrar ejemplos y código en:
      packages/apps/Settings/src/com/android/settings/dashboard/ProgressiveDisclosureMixin.java

      Nota: Este componente debe utilizarse junto con DashboardFragment. (Consulte más detalles sobre DashboardFragment en Arquitectura de información actualizada ).

  • Selector de aplicaciones predeterminado
    • Puede encontrar el código de la clase base en:
      packages/apps/Settings/src/com/android/settings/applications/defaultapps/DefaultAppPickerFragment.java
    • Hay varias subclases de DefaultAppPickerFragment, cada una de las cuales implementa un selector para diferentes propósitos.
  • Preferencia de estilo MasterSwitch
    • El código está en: packages/apps/Settings/src/com/android/settings/widget/MasterSwitchPreference.java
    • Un caso de uso de ejemplo es el conmutador maestro de Wi-Fi. Puede encontrar un ejemplo en: packages/apps/Settings/src/com/android/settings/wifi/WifiMasterSwitchPreferenceController.java

Implementación

Los fabricantes de dispositivos pueden comenzar a usar todos los componentes nuevos listos para usar. Si los OEM deciden implementar una nueva preferencia de estilo "MasterSwitch" o un selector de aplicaciones predeterminado, deben seguir los ejemplos de este documento y los archivos de referencia (Javadoc) escritos con cada componente para obtener más detalles.

Personalización

  • Comportamiento divisor. Para cambiar la forma en que se dibuja el divisor, actualice el estilo de los divisores de Configuración y cambie el valor de lo siguiente:
    • allowDividerAbove
    • allowDividerBelow
    • allowDividerAfterLastItem
  • Color del tema ActionBar. Las actividades deben usar Theme.DeviceDefault.Settings como su tema, o crear un tema personalizado usando Theme.DeviceDefault.Settings como padre.
  • Widget de encabezado de la aplicación. Use establecedores en AppHeaderController para personalizar cada campo y llame a build () una vez que todos los campos estén configurados.
  • Botón de expansión:
    • Para deshabilitar completamente la funcionalidad, anule el constructor de ProgressiveDisclosureMixin y establezca keepExpanded en verdadero.
    • Para personalizar cuántos elementos mostrar inicialmente, llame al método ProgressiveDisclosureMixin.setTileLimit() durante el método onAttach(Context) del fragmento.