首页 > 系统 > Android > 正文

android AlertDialog多种使用方法详解

2019-12-12 04:01:50
字体:
来源:转载
供稿:网友

当你的应用需要显示一个进度条或需要用户对信息进行确认时,可以使用alertDialog来完成。下面来介绍常用的四种AlertDialog。

1、普通对话框

package com.example.yk.dialogtest;  import android.content.DialogInterface; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.Toast;  /**  * AlertDialog普通对话框  */ public class GeneralDialogActivity extends AppCompatActivity {   @Override  protected void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);   setContentView(R.layout.activity_general_dialog);   AlertDialog.Builder alertDialog = new AlertDialog.Builder(this)     .setTitle("操作title")//设置title     .setMessage("操作message")//设置要显示的message     .setCancelable(false)//表示点击dialog其它部分不能取消(除了“取消”,“确定”按钮)     .setPositiveButton("确定", new       DialogInterface.OnClickListener() {    @Override    public void onClick(DialogInterface dialogInterface, int i) {     Toast.makeText(GeneralDialogActivity.this, "点击了确定", Toast.LENGTH_SHORT).show();     }   }).setNegativeButton("取消", new DialogInterface.OnClickListener() {    @Override    public void onClick(DialogInterface dialogInterface, int i) { //    dialogInterface.dismiss();    }   });   alertDialog.show();//别忘了show  } } 

2、单选对话框

package com.example.yk.dialogtest;  import android.content.DialogInterface; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.Toast;  /**  * 单选对话框  */ public class SingleDialogActivity extends AppCompatActivity {  private String[] items={"java","php","c"};  @Override  protected void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);   setContentView(R.layout.activity_single_dialog);   AlertDialog.Builder alertDialog = new AlertDialog.Builder(this)     .setTitle("提示title") //    .setMessage("提示message")//在需要设置单选对话框的情况下是不能设置message的,否则单选对话框内容会失效     .setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {//checkedItem=-1表示默认不选中      @Override      public void onClick(DialogInterface dialogInterface, int i) {       Toast.makeText(SingleDialogActivity.this, "选中了"+items[i], Toast.LENGTH_SHORT).show();      }     }).setPositiveButton("确定", new DialogInterface.OnClickListener() {      @Override      public void onClick(DialogInterface dialogInterface, int i) {       }     });    alertDialog.show();  } } 

3、多选对话框

package com.example.yk.dialogtest;  import android.content.DialogInterface; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.Toast;  /**  * 多选对话框  */ public class MultiChoiceDialogActivity extends AppCompatActivity {  private String[] items={"java","php","c"};  @Override  protected void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);   setContentView(R.layout.activity_multi_choice_dialog);   AlertDialog.Builder alertDialog = new AlertDialog.Builder(this)     .setTitle("提示title")     .setCancelable(false)     .setMultiChoiceItems(items, new boolean[]{false, false, false}, new DialogInterface.OnMultiChoiceClickListener() {        @Override      public void onClick(DialogInterface dialogInterface, int i, boolean b) {       if(b){        Toast.makeText(MultiChoiceDialogActivity.this, "选中了"+items[i], Toast.LENGTH_SHORT)          .show();       }       }     })     .setPositiveButton("确定", new DialogInterface.OnClickListener() {      @Override      public void onClick(DialogInterface dialogInterface, int i) {       }     });   alertDialog.show();  } } 

4、进度条对话框

package com.example.yk.dialogtest;  import android.app.ProgressDialog; import android.os.Handler; import android.os.Message; import android.support.v7.app.AppCompatActivity; import android.os.Bundle;  /**  * 进度条对话框  */ public class ProgressDialogActivity extends AppCompatActivity {  private ProgressDialog progressDialog;   @Override  protected void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);   setContentView(R.layout.activity_progress_dialog);   progressDialog = new ProgressDialog(this);   progressDialog.setTitle("提示title");   progressDialog.setCancelable(true); //  progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//旋转进度条,默认风格   progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//横向进度条   progressDialog.show();   } } 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表