Xamarin.Forms de tela dupla
Dispositivos de tela dupla, como o Microsoft Surface Duo, facilitam novas possibilidades de experiência do usuário para seus aplicativos. Xamarin.Forms inclui TwoPaneView
e DualScreenInfo
classes para que você possa desenvolver aplicativos para dispositivos de tela dupla.
Introdução
Siga estas etapas para adicionar recursos de tela dupla a um Xamarin.Forms aplicativo:
Abra a caixa de diálogo Gerenciador de Pacotes NuGet para sua solução.
Na guia Procurar, pesquise por
Xamarin.Forms.DualScreen
.Instale o
Xamarin.Forms.DualScreen
pacote em sua solução.Adicione a seguinte chamada de método de inicialização à classe do
MainActivity
projeto Android, noOnCreate
caso:Xamarin.Forms.DualScreen.DualScreenService.Init(this);
Esse método é necessário para que o aplicativo seja capaz de detectar alterações no estado do aplicativo, como ser estendido em duas telas.
Atualize o
Activity
atributo na classe doMainActivity
projeto Android, para que ele inclua todas estasConfigurationChanges
opções:ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.UiMode
Esses valores são necessários para que as alterações de configuração e o estado do intervalo possam ser relatados de forma mais confiável. Por padrão, apenas dois são adicionados aos Xamarin.Forms projetos, portanto, lembre-se de adicionar o restante para obter suporte confiável a tela dupla.
Solução de problemas
Se a classe ou TwoPaneView
o layout não estiverem funcionando conforme o DualScreenInfo
esperado, verifique novamente as instruções de configuração nesta página. Omitir ou configurar incorretamente o Init
método ou os ConfigurationChanges
valores de atributo são causas comuns de erros.
Examine os Xamarin.Forms exemplos de tela dupla para obter diretrizes adicionais e implementação de referência.
Próximas etapas
Depois de adicionar o NuGet, adicione recursos de tela dupla ao seu aplicativo com as seguintes diretrizes:
- Padrões de design de tela dupla – ao considerar a melhor forma de utilizar várias telas em um dispositivo de tela dupla, consulte esta orientação de padrão para encontrar o melhor ajuste para a interface do aplicativo.
- Layout TwoPaneView – a Xamarin.Forms
TwoPaneView
classe, inspirada no controle UWP de mesmo nome, é um layout multiplataforma otimizado para dispositivos de tela dupla. - Classe auxiliar DualScreenInfo – a
DualScreenInfo
classe permite que você determine em qual painel sua exibição está, qual é o tamanho, em que postura o dispositivo está, o ângulo da dobradiça e muito mais. - Gatilhos de tela dupla – o
Xamarin.Forms.DualScreen
namespace inclui dois gatilhos de estado que disparam umaVisualState
alteração quando o modo de exibição do layout ou janela anexado é alterado.
Visite os documentos do desenvolvedor de tela dupla para obter mais informações.