Em minha última postagem um dos comentários me chamou atenção para o comportamento do botão físico Voltar. Ele não está sendo considerado no tratamento que fizemos.
Com base nesse comentário, do leitor Tiago preparei a postagem de hoje apenas para tratar esse comportamento do botão de hardware e assim complementar a postagem anterior: DELPHI XE7 ANDROID E DIALOGS, O QUE MUDOU?
Qual é o problema?
Tiago notou que ao pressionar o botão Voltar disponibilizado pelo Android via hardware, a aplicação exibia a mensagem rapidamente e se fechava em seguida, independente da resposta do usuário… nem mesmo esperava que este respondesse à pergunta.
Veja no vídeo abaixo:
E como resolver a questão?
Bem vamos manter o evento OnCloseQuery que fizemos na postagem anterior, e vamos recorrer ao evento OnKeyUp do formulário que será codificado como abaixo:
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char; Shift: TShiftState); var Fechar : Boolean; begin if Key = vkHardwareBack then begin key := 0; FormCloseQuery(Sender, Fechar); end; end;
Vamos conferir como ficou neste próximo vídeo:
É isso, simples assim! Até a próxima pessoal!