AlterDialog 深究kongleifeng

来源:互联网 发布:网络营销策划方案范文 编辑:程序博客网 时间:2024/05/16 09:14

AlertDialog的功能强大,它可以生成各种内容的对话框。
AlterDialog坚持六步走。
第一步、首先创建AlterDialog.Builder对象。
第二步、为创建的Builder对象设置标题.setTile() 和 .setIcon()设置标题的图标。
第三步、为创建的Builder对象设置内容.Message()。
第四步、为创建的Builder对象设置确定.setPostiveButton()和取消.setNegativeButton()和中立.setNeutralButton按钮。
第五步、Builder对象的完整建立。调用.Create()方法。
第六步、Builder对象的展示。调用.Show()方法。

注意:第三步 最灵活,AlterDialog允许创建各种内容的对话框,归纳起来,AlterDialog提供的6种方法来显示指定的对话框的内容。
(1)例子中的setMessage():设置对话内容为简单的文本显示。
(2)setView():设置对话内容为自定义View。
(3)setItems(): 设置对话内容为简单的列表项。
(4)setSingleChoiceItems():设置对话框内容为单项列表项。
(5)setMultiChoiceItems():设置对话框内容为多选列表项。
(6)setAdapter():设置对话框内容为自定义列表项。

以下是我写的一个简单的Demo 仅供大家参考。
布局文件仅仅只添加一个按钮。

```<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context=".MainActivity" >    <Button        android:id="@+id/btn_showDialog"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_centerInParent="true"        android:text="点击我出现AlertDialog" /></RelativeLayout>
实现文件中添加代码如下。

public class MainActivity extends Activity {

private Button btnAlterDialog;private Context mcontext;@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    mcontext = MainActivity.this;    findByid();    btnAlterDialog.setOnClickListener(new OnClickListener() {        @Override        public void onClick(View v) {            //  showAlterDialog            showAlterDialog();        }    });}   private void findByid (){    btnAlterDialog = (Button) findViewById(R.id.btn_showDialog);}//  AlterDialog 六部曲 public void showAlterDialog(){    AlertDialog.Builder builder = new Builder(mcontext); // 第一步 实例化AlterDialog.Builder对象    builder.setTitle("Tips");//第二步 设置 builder 标题    builder.setIcon(R.drawable.ic_launcher); //第二步 设置 builder 图标    builder.setMessage("这是一条测试数据");// 第三步 设置 builder 显示的信息    setPositiveButton(builder);// 第四步 设置 builder 需要显示的按钮 确定按钮    setNegativeButton(builder);// 第四步 设置 builder 需要显示的按钮 消极按钮    builder.create();//第五步 builder 创建     builder.show();//第六步 builder 显示在界面上};// positiveButton 事件private AlertDialog.Builder setPositiveButton(AlertDialog.Builder builder){    return builder.setPositiveButton("确定",new DialogInterface.OnClickListener() {        @Override        public void onClick(DialogInterface dialog, int which) {            // TODO Auto-generated method stub            System.out.println("您点击了确定按钮");        }    });}// negativeButton 事件private AlertDialog.Builder setNegativeButton(AlertDialog.Builder builder){    return builder.setNegativeButton("取消",new DialogInterface.OnClickListener() {        @Override        public void onClick(DialogInterface dialog, int which) {            // TODO Auto-generated method stub            System.out.println("您点击了取消按钮");        }    }); }

}

运行之后的结果如图
这里写图片描述

0 0