..
Obviamente um AlertDialog estruturado como no capítulo anterior não é muito útil porque ele não tem botão e realmente bloqueia o aplicativo, porque não há maneira de removê-lo da tela.
Antes de adicionar o all'AlertDialog botões, no entanto, você deve adicionar um objeto TextView em que vamos escrever uma mensagem diferente dependendo do botão clicado pelo usuário.
A adição do TextView é deixada como um exercício para o leitor.
Para a adição de botões e da associação em ouvintes ALertDialog basta substituir o código escrito no capítulo anterior com o seguinte:
AlertDialog.Builder miaAlert AlertDialog.Builder = new (this);
miaAlert.setMessage ("verificar o funcionamento dos botões adicionado!");
miaAlert.setTitle ("AlertDialog de MrWebMaster");
miaAlert.setCancelable (false);
miaAlert.setPositiveButton ("Yes", DialogInterface.OnClickListener new () {
public void onClick (DialogInterface diálogo, int id) {
tv.setText ("eu cliquei no botão YES");
}
});
miaAlert.setNegativeButton ("Não", DialogInterface.OnClickListener new () {
public void onClick (DialogInterface diálogo, int id) {
tv.setText ("eu cliquei no botão NO");
}
});
AlertDialog miaAlert.create alerta = ();
Alert.show ();
No que se refere as três primeiras linhas de código não precisa explicar nada inquanto são idênticos aos mostrados no capítulo anterior. Indo para a frente com a análise do código encontramos o método de invocação setCanceble (false), que tem o efeito de desabilitar o botão de trás do telefone e então você terá que clicar em um dos dois botões para fechar a AlertDialog.
Dito isto, passamos para a criação de botões real. O primeiro botão é criado com o setPositiveButton método que recebe como entrada uma string que será exibida na tela como o conteúdo do botão e um ouvinte. Como podemos ver o ouvinte é declarado como uma nova instância DialogInterface.OnClickListener e não como uma nova instância View.OnClickListener. Este fato só pode ser aplicado a elementos eriditano a classe View, e desde que não o AlertDialog herdam essa classe, mas eles são parte do pacote android.app, você deve usar um ouvinte como DialogInterface.
Na prática, esta diferença não é sostanzianziale, de fato, neste caso, será necessário substituir o método OnClick e insira o código para o comportamento que queremos fazer dois botões. Como podemos ver o método OnClick toma como entrada dois parâmetros: o primeiro é um objeto do tipo AlertDialog (caixa de diálogo que lhe diz o que causou a ativação do ouvinte) e, em seguida, um ID que identifica o botão pressionado. Basta ir dentro do método OnClick para mudar o texto na tv TextView.
A estrutura do método OnClick sugere uma versão otimizada dos nossos ouvintes. Na verdade AlertDialog saber o que desencadeou o ouvinte e qual botão foi clicado no alerta, você pode criar um ouvinte única para lidar com uma AlertDialog mais e os botões relacionados. Isto é realizado simplesmente pela execução de uma primeira opção no diálogo de atributo (AlertDialog vamos identificar o que desencadeou o ouvinte) e, em cada caso em AlertDialog colocar em outro switch para descobrir qual botão no AlertDialog levados em consideração, é clicado.
É deixado como um exercício para o leitor que esta nova implementação do ouvinte é basicamente muito semelhante ao observado nos capítulos anteriores deste guia.
| |
ASP e Access (Ebook)
Gerenciar um banco de dados MS Access com ASP. Com apenas 29 €. |
| |
HTML (Curso)
A linguagem de marcação para a Web a partir de 29 €. |
| |
Java (Curso)
OOP Programação em Java dom -15% Desconto até 2011/12/10. |