Escolar Documentos
Profissional Documentos
Cultura Documentos
Programação para
Dispositivos Móveis I
Professor Diego de Carvalho Neves da Fontoura
É uma Classe que herda os métodos e atributos da Classe Dialog e que implementa os métodos
da Classe Dialogo Interface.
A classe AlertDialog permite criação da Caixas de Diálogo com mensagens com textos(que usamos até
agora na disciplina) ou com entre 1 e 3 botões.
As caixas de diálogo são pequenas janelas que levam o usuário a tomar uma decisão ou inserir
informações adicionais. Elas não ocupam toda a tela e são normalmente usadas para eventos modais que
exijam que usuários realizem uma ação antes de continuar.
3
A classe AlertDialog permite a criação de diversos projetos de caixa de diálogo e normalmente é a
única classe de caixa de diálogo necessária. Como ilustrado na figura 2, há três regiões de uma
caixa de diálogo de alerta:
1.Título
É opcional e deve ser usado somente quando a área do conteúdo estiver ocupada por uma
mensagem detalhada, uma lista ou layout personalizado. Se for necessário declarar uma mensagem
ou pergunta simples. O título não é necessário.
2.Área do conteúdo
Pode exibir uma mensagem, uma lista ou outro layout personalizado.
14
3.Botões de ação
Não deve haver mais de três botões em uma caixa de diálogo.
Figura 2
EXEMPLOS DE CAIXAS DE DIALOGO
COM ALERTDIALOG
5
/atributo da classe.
private AlertDialog alerta; Figura 1: Exemplo de um diálogo básico
private void exemplo_simples() {
//Cria o gerador do AlertDialog
AlertDialog.Builder builder = new AlertDialog.Builder(this);
//define o titulo
builder.setTitle("Titulo");
//define a mensagem
builder.setMessage("Qualifique este software");
//define um botão como positivo
builder.setPositiveButton("Positivo", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
Toast.makeText(MainActivity.this, "positivo=" + arg1,
Toast.LENGTH_SHORT).show();
}
14
});
//define um botão como negativo.
builder.setNegativeButton("Negativo", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
Toast.makeText(MainActivity.this, "negativo=" + arg1,
Toast.LENGTH_SHORT).show();
}
});
//cria o AlertDialog
alerta = builder.create();
//Exibe
alerta.show();
}
6
É importante sabermos que ao criarmos o diálogo utilizando os recursos
padrões ele será automaticamente desfeita ao pressionar qualquer dos botões.
14
etc…) após isso vamos pegar o AlertDialog do Builder e mandar exibir o
diálogo.
7
private AlertDialog alerta;//atributo da classe.
Se você optar por retroceder a lista com um ListAdapter, sempre use um Loader para que o conteúdo
carregue assincronamente. Veja mais detalhes sobre isso nos guias Criação de layouts com um
adaptador e Carregadores.
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.pick_color)
.setItems(R.array.colors_array, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// The 'which' argument contains the index position
// of the selected item
}
});
return builder.create();
}
Esse exemplo é para deixá-los querendo mais
Por padrão, o layout personalizado preenche a janela da caixa de diálogo, mas ainda é possível usar
métodos AlertDialog.Builder para adicionar botões e um título.
Site: http://matheuspiscioneri.com.br/blog/alertdialog-android-
caixa-dialogo/
Site: https://www.devmedia.com.br/android-dialog/26749
Site: https://developer.android.com/guide/topics/ui/dialogs.html
MUITO
OBRIGADO