对话框通知(Dialog Notification)

来源:互联网 发布:c语言怎么做图形界面 编辑:程序博客网 时间:2024/04/25 18:37

当你的应用需要显示一个进度条或需要用户对信息进行确认时,可以使用对话框来完成。

下面代码将打开一个如右图所示的对话框:


new AlertDialog.Builder(context)

  .setTitle("java培训")

  .setCancelable(false)//设置不能通过“后退”按钮关闭对话框

  .setMessage("浏览传智播客网站?")

  .setPositiveButton("确认",

  newDialogInterface.OnClickListener(){

  publicvoid onClick(DialogInterfacedialoginterface,inti){

            Uri uri =Uri.parse("http://www.itcast.cn/");//打开链接

            Intentintent = new Intent(Intent.ACTION_VIEW,uri);

            startActivity(intent);

        }

  })

  .setNegativeButton("取消", newDialogInterface.OnClickListener() {

              public void onClick(DialogInterface dialog,int id) {

                  dialog.cancel();

              }

     })

     .show();//显示对话框

上面代码采用的是一个链式调用,像setTitle()、setMessage()这些方法,他们的返回值都是当前对话框对象。


创建带单选项列表的对话框

下面代码将打开一个如右上图所示的选项列表对话框:


final String[] items ={"java", ".net", "php"};

new AlertDialog.Builder(SenderNotificationActivity.this).setTitle("选择语言")

  .setItems(items, new DialogInterface.OnClickListener() {

      public void onClick(DialogInterface dialog, int item) {

              Toast.makeText(getApplicationContext(), items[item],

  Toast.LENGTH_SHORT).show();

      }

  }).show();//显示对话框

下面代码将打开一个如右下图所示的带单选框的列表对话框:


final String[] items ={"java", ".net", "php"};

new AlertDialog.Builder(SenderNotificationActivity.this).setTitle("选择语言")

.setSingleChoiceItems(items, 1, new DialogInterface.OnClickListener() {

   public void onClick(DialogInterface dialog, int item) {

          Toast.makeText(getApplicationContext(), items[item],

  Toast.LENGTH_SHORT).show();

          dialog.cancel();

    }

}).show();//显示对话框

setSingleChoiceItems()的第二个参数是设置默认选项,

选项索引从0开始,-1代表不选择任何选项。


创建带多选项列表的对话框

下面代码将打开一个如右下图所示的多选项列表对话框:


final String[] items ={"java", ".net", "php"};

new AlertDialog.Builder(SenderNotificationActivity.this).setCancelable(false)

.setTitle("选择语言")

.setMultiChoiceItems(items, new boolean[]{false,true,false}, new DialogInterface.OnMultiChoiceClickListener() {

  @Override

  publicvoid onClick(DialogInterface dialog, int which, booleanisChecked) {

  if(isChecked){

  Toast.makeText(getApplicationContext(), items[which],

  Toast.LENGTH_SHORT).show();

  }

  }

  })

.setPositiveButton("确认",

  newDialogInterface.OnClickListener(){

  publicvoid onClick(DialogInterfacedialoginterface, inti){

  dialoginterface.dismiss();

   }

})

.show();//显示对话框


进度对话框(ProgressDialog)


l使用代码ProgressDialog.show(ProgressDialogActivity.this, "请稍等", "数据正在加载中...", true);创建并显示一个进度对话框。
l调用setProgressStyle()方法设置进度对话框风格。有两种风格:

    ProgressDialog.STYLE_SPINNER 旋体进度条风格 (为默认风格)

    ProgressDialog.STYLE_HORIZONTAL 横向进度条风格


原创粉丝点击