Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los dispositivos de doble pantalla como Microsoft Surface Duo ofrecen nuevas posibilidades de experiencia del usuario para las aplicaciones. Xamarin.Forms incluye las clases TwoPaneView y DualScreenInfo para que pueda desarrollar aplicaciones para dispositivos de doble pantalla.
Introducción
Siga estos pasos para agregar funcionalidades de doble pantalla a una aplicación Xamarin.Forms:
Abra el cuadro de diálogo Administrador de paquetes de NuGet para su solución.
En la pestaña Examinar, busca
Xamarin.Forms.DualScreen.Instale el paquete de
Xamarin.Forms.DualScreenen la solución.Agregue la siguiente llamada al método de inicialización a la clase
MainActivitydel proyecto de Android, en el eventoOnCreate:Xamarin.Forms.DualScreen.DualScreenService.Init(this);Este método es necesario para que la aplicación pueda detectar cambios en el estado de la aplicación, como el hecho de abarcar un espacio de dos pantallas.
Actualice el atributo
Activityen la claseMainActivitydel proyecto de Android, de modo que incluya todas estas opciones deConfigurationChanges:ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.UiModeEstos valores son necesarios para que los cambios de configuración y el espacio abarcado se puedan notificar de forma más confiable. De forma predeterminada, solo dos se agregan a los proyectos de Xamarin.Forms, por lo que no olvide agregar el resto para ofrecer compatibilidad de doble pantalla confiable.
Solución de problemas
Si la clase DualScreenInfo o el diseño TwoPaneView no funcionan del modo esperado, revise de nuevo las instrucciones de configuración de esta página. La omisión o la incorrecta configuración del método Init o de los valores de atributo de ConfigurationChanges son causas comunes de error.
Revise los ejemplos de doble pantalla de Xamarin.Forms para obtener orientación adicional y una implementación de referencia.
Pasos siguientes
Una vez que haya agregado NuGet, agregue características de doble pantalla a la aplicación con las siguientes instrucciones:
- Modelos de diseño de doble pantalla: al considerar el uso óptimo de varias pantallas en un dispositivo de doble pantalla, consulte estas instrucciones de patrones para encontrar la mejor opción para la interfaz de su aplicación.
- Diseño TwoPaneView: la clase
TwoPaneViewde Xamarin.Forms, inspirada en el control de UWP del mismo nombre, es un diseño multiplataforma optimizado para los dispositivos de pantalla doble. - Clase auxiliar DualScreenInfo: la clase
DualScreenInfopermite determinar en qué panel se encuentra la vista, qué tamaño tiene, en qué posición está el dispositivo, el ángulo de la bisagra y mucho más. - Desencadenadores de pantalla doble: el espacio de nombres de
Xamarin.Forms.DualScreenincluye dos desencadenadores de estado que desencadenan un cambio deVisualStatecuando varía el modo de visualización del diseño adjunto o de la ventana.
Para obtener más información, consulte la documentación sobre la doble pantalla para desarrolladores.