Imagine um app Delphi Android e que um formulário desse app em especial tenha a orientação de tela diferente dos demais formulários desse app. Veja como nessa postagem.
Essa postagem traz o vídeo de minha apresentação no Intensive Delphi, evento ao qual fui agraciado com o convite para apresentar um pouco de conteúdo nessa que foi uma verdadeira festa de encerramento da comunidade Delphi.
Meu vídeo foi exibido no dia 21 de dezembro às 20:00h e com poucos minutos apresentei essa dica bem legal para quem deseja fixar a orientação de tela dos Apps Mobile com Delphi.
O vídeo
Já está disponível para os assinantes do canal do Youtube, você que ainda não se inscreveu no meu canal, inscreva-se aqui, o vídeo Orientação de Tela em Apps Delphi Android abaixo:
Algumas pessoas entraram em contato dizendo terem gostado das dicas, o que me deixou bastante contente.
Resumo
Basicamente a técnica utilizada consiste me atribuir e revogar os orientações à aplicação de acordo com sua preferência.
Veja abaixo alguns exemplos e trechos de código.
Definir que toda a aplicação só seja exibida em modo paisagem
Para definir que toda a aplicação seja exibida sempre com uma orientação fixa, basta acessar no Delphi a opção Project -> Option -> Application -> Orientation e lá setar a orientação desejada, você também pode selecionar mais de uma orientação para que a aplicação obedeça. Veja na imagem abaixo como seria setar a aplicação para ser exibida sempre em modo paisagem independentemente da orientação do dispositivo.
Orientação fixa para formulários específicos
Você pode definir a orientação de formulários específicos de sua aplicação mobile, para isso basta revogar as orientações não desejadas, deixando apenas a orientação necessária no momento em que o formulário for chamado. Veja o exemplo de código abaixo, onde na criação do formulário Form2, disponibilizamos apenas a orientação Paisagem Invertida:
procedure TForm2.FormCreate(Sender: TObject); begin Application.FormFactor.Orientations := [TFormOrientation.InvertedLandscape]; end;
Um ponto que precisa ser lembrado é que ao fechar o formulário você deve “devolver” à aplicação a possibilidade de rotacionar com todas as orientações novamente:
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction); begin Application.FormFactor.Orientations := [TFormOrientation.Portrait, TFormOrientation.Landscape, TFormOrientation.InvertedPortrait, TFormOrientation.InvertedLandscape]; end;
Essa é uma ideia básica, no vídeo você poderá ver que fiz questão de levantar diversas possibilidades de ocorrências e algumas nuances que podem passar desapercebidas gerando alguns imprevistos.
Então fica a dica para que assista o vídeo, dê seu joinha e assine o canal www.youtube.com/landersongomes6.
Até a próxima pessoal