网友通过本文主要向大家介绍了alertdialog对话框,alertdialog 输入框,alertdialog用法,alertdialog,alertdialog.builder等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
AlertDialog创建6种对话框的用法
AlertDialog生成的对话框可分为4个区域:图标区,标题区,内容区,按钮区
结构如图:

AlertDialog对话框的使用:
1,创建AlertDialog.Builder对象
2,调用Builder对象的setTitle()设置标题,setIcon设置图标
3,调用Builder对象的相关方法设置内容,AlertDialog提供如下六中设置指定对话框的内容:
setMessage();设置简单文本框的内容
setItems();设置简单列表的内容,数组
setSingleChoiceItems();;设置单选列表的内容,内容参数可以是数组Cursor,ListAdapter
setMultiChoiceItems();设置多选列表项的内容,内容参数可以是数组,Cursor
setAdapter();设置内容,内容是ListAdapter,常用的BaseAdapter,SimpleAdapter,ArrayAdapter
setView();设置内容,参数是自定义的View
4,调用Builder对象的setPositiveButton()和 setNegativeButton()设置按钮和监听器
5,调用Builder对象的create()方法创建AlertDialog对象,再调用AlertDialog对象的show()方法显示对话框
总之:调用Builder对象设置图标,标题,内容,按钮,在create(),show()
代码模板:
new AlertDialog.Builder(this)
// 设置对话框标题
.setTitle("简单对话框")
// 设置图标
.setIcon(R.drawable.tools)
//设置内容,可代替
.setMessage("对话框的测试内容\n第二行内容").setPositiveButton("确定",listener).setNegativeButton("取消",listener).create().show();
acitivity_main.xml

MainActivity.java
package com.hust.alertdialogtest;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.DialogInterface.OnMultiChoiceClickListener;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.TableLayout;
import android.widget.TextView;
/*AlertDialog对话框的使用:
* AlertDialog对话框有四个区域:图标区,标题区,内容区,按钮区
* 1,创建AlertDialog.Builder对象
* 2,调用Builder对象的setTitle()设置标题,setIcon设置图标
* 3,调用Builder对象的相关方法设置内容
* setMessage();设置简单文本框的内容
* setItems();设置简单列表的内容,数组
* setSingleChoiceItems();;设置单选列表的内容,内容参数可以是数组,Cursor,ListAdapter
* setMultiChoiceItems();设置多选列表项的内容,内容参数可以是数组,Cursor
* setAdapter();设置内容,内容是ListAdapter,常用的BaseAdapter,SimpleAdapter,ArrayAdapter
* setView();设置内容,参数是自定义的View
* 4,调用Builder对象的setPositiveButton()和 setNegativeButton()设置按钮和监听器
* 5,调用Builder对象的create()方法创建AlertDialog对象,再调用AlertDialog对象的show()方法显示对话框
*
*
* 总之:调用Builder对象设置图标,标题,内容,按钮,在create(),show()
* */
public class MainActivity extends Activity {
TextView show;
String[] items=new String[]{
"湖北省","福建省","贵州省","四川省"
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
show=(TextView) findViewById(R.id.textView1);
}
/*简单文本对话框:builder.setMessage()设置内容*/
public void simple(View v){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("简单对话框");
builder.setIcon(R.drawable.tools);
builder.setMessage("这是简单文本对话框\n第二行内容");
//为builder对象添加确定按钮,不过这里嵌套了一个函数
setPositiveButton(builder);
//为builder对象添加取消按钮
builder=setNegativeButton(builder);
//builder创建对话框对象AlertDialog
AlertDialog simpledialog=builder.create();
simpledialog.show();
}
/*简单列表对话框(数组对话框):builder.setItems()设置内容*/
public void simpleList(View v){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("数组列表对话框");
builder.setIcon(R.drawable.tools);
builder.setItems(items, new OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
show.setText("你单击了 "+items[which]);
}
});
setPositiveButton(builder);
builder=setNegativeButton(builder);
AlertDialog simplelistdialog=builder.create();
simplelistdialog.show();
}
/*单选列表项对话框:builder.setSingleChoiceItems()设置内容,内容参数可以是数组,Cursor,ListAdapter*/
public void singleChoice(View v){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("单选列表项对话框");
builder.setIcon(R.drawable.tools);
//设置单选列表项,默认选中第二项
builder.setSingleChoiceItems(items,1, new OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
show.setText("你单击了 "+items[which]);
}
});
setPositiveButton(builder);
builder=setNegativeButton(builder);
AlertDialog simplechoicedialog=builder.create();
simplechoicedialog.show();
}
/*
*
*多选列表项对话框: builder.setMultiChoiceItems()设置内容,参数可以是数组,Cursor数据库返回结果集
*
* AlertDialog.Builder.setMultiChoiceItems(CharSequence[] items, boolean[] checkedItems, OnMultiChoiceClickListener listener)*/
public void multiChoice(View v){
AlertDialog.Builder builder=new AlertDialog.Builder(this);
builder.setTitle("多选列表项对话框");
buil

