码迷,mamicode.com
首页 > 移动开发 > 详细

Android 对话框详解(一)

时间:2015-02-20 00:14:09      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:android   对话框   

    对话框是程序运行中的弹出窗口。例如,当用户要删除一个联系方式时,会弹出一个

对话框,让用户确认是否真的要删除。 

    Android系统提供了四种对话框:警告对话框 (AlertDialog)、进度对话框(ProgressDialog)、日期选择对话框(DatePickerDialog)和时间选择对话框(TimePickerDialog)

                            警告对话框(AlertDialog)

    AlertDialog是一个提示窗口,要求用户作出选择。该对话框中一般会有几个选择按钮、标题信息和提示信息。 

    在程序中创建对话框需要如下步骤:

    1、获得 AlertDialog的静态内部类 Builder 对象,由该类来创建对话框。

    2、通过 Buidler对象设置对话框的标题、按钮以及按钮将要响应的事件。

    3、调用Builder的createO方法创建对话框。

    4、调用AlertDialog的showO方法显示对话框。

    实例代码如下:

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final TextView mytext=(TextView)this.findViewById(R.id.text1);
        final AlertDialog.Builder builder=new AlertDialog.Builder(this);//创建builder对象
        Button btn1=(Button)this.findViewById(R.id.btn_main1);
        btn1.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                builder.setMessage("Are you sure!")
                .setPositiveButton("OK",new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface arg0, int arg1) {
                        // TODO Auto-generated method stub
                        mytext.setText("success");
                    }
                }).setNegativeButton("CANCEL",new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface arg0, int arg1) {
                        // TODO Auto-generated method stub
                        mytext.setText("cancel");
                    }
                });
                AlertDialog ad=builder.create();
                ad.show();
            }
        });
    }
}

效果如下,点击按键后:

                    技术分享

另一种对话框,如下代码:

public class MainActivity extends Activity {
    private static final int menu1=Menu.FIRST;
    private static final int menu2=Menu.FIRST+1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final TextView mytext=(TextView)this.findViewById(R.id.text1);
        final AlertDialog.Builder builder=new AlertDialog.Builder(this);
        final String[] message={"--------","*******","++++++++"};
        Button btn1=(Button)this.findViewById(R.id.btn_main1);
        btn1.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                //两种不同风格的对话框
                builder.setTitle("Please choose...")
                .setSingleChoiceItems(message, -1, new DialogInterface.OnClickListener() {
                //.setItems(message,new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface arg0, int arg1) {
                        // TODO Auto-generated method stub
                        mytext.setText(message[arg1]);
                    }
                });
                AlertDialog ad=builder.create();
                ad.show();
            }
        });
    }
}

 以上两种模式如下图:

技术分享 技术分享




本文出自 “无用大叔” 博客,请务必保留此出处http://aslonely.blog.51cto.com/6552465/1614888

Android 对话框详解(一)

标签:android   对话框   

原文地址:http://aslonely.blog.51cto.com/6552465/1614888

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!