Android中的AlertDialog使用示例一(警告对话框)
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式。下面我们模拟卸载应用程序时弹出的最为普通的警告对话框,如下图:
layout布局界面代码示例:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:text="卸载"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="show"
android:id="@+id/button" />
</LinearLayout>
Java实现代码:
import android.content.DialogInterface;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Toast;
/**
* Created by panchengjia on 2016/11/21.
*/
public class AlertDialogDemo extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.alterdialog);
}
public void show(View v){
//实例化建造者
AlertDialog.Builder builder = new AlertDialog.Builder(this);
//设置警告对话框的标题
builder.setTitle("卸载");
//设置警告显示的图片
// builder.setIcon(android.R.drawable.ic_dialog_alert);
//设置警告对话框的提示信息
builder.setMessage("确定卸载吗");
//设置”正面”按钮,及点击事件
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(AlertDialogDemo.this,"点击了确定按钮",Toast.LENGTH_SHORT).show();
}
});
//设置“反面”按钮,及点击事件
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(AlertDialogDemo.this,"点击了取消按钮",Toast.LENGTH_SHORT).show();
}
});
//设置“中立”按钮,及点击事件
builder.setNeutralButton("等等看吧", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(AlertDialogDemo.this,"点击了中立按钮",Toast.LENGTH_SHORT).show();
}
});
//显示对话框
builder.show();
}
}