AlertDialog 封装

AlertDialog 封装
效果图

AlertDialog 封装
1.新建AlertDialogActivity用于封装AlertDialog
package com.example.admin.alertdialog.alertdialog;

import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface.OnClickListener;

/**
 * 对话框(AlertDialog)封装类
 *
 * @author 苹果
 */
public class AlertDialogActivity {
    /**
     * @param context  上下文
     * @param icon     图标,如:R.drawable.icon
     * @param title    标题
     * @param message  显示内容
     * @param btnName  按钮名称
     * @param listener 监听器,需实现DialogInterface.OnClickListener接口
     * @return
     */
    public static AlertDialog one(Context context,
                                  int icon,
                                  String title,
                                  String message,
                                  String btnName,
                                  OnClickListener listener) {
        // 定义dialog为空
        AlertDialog dialog = null;
        AlertDialog.Builder dialog1 = new AlertDialog.Builder(context);
        // 设置对话框的标题
        dialog1.setTitle(title);
        // 设置对话框的图标
        dialog1.setIcon(icon);
        // 设置对话框的显示内容
        dialog1.setMessage(message);
        // 添加按钮dialog1.setPositiveButton(btnName, new
        // DialogInterface.OnClickListener()
        dialog1.setPositiveButton(btnName, listener);
        // 创建一个普通对话框
        dialog = dialog1.create();
        return dialog;
    }

    /**
     * @param context  上下文
     * @param icon     图标,如:R.drawable.icon
     * @param title    标题
     * @param message  显示内容
     * @param btnName  按钮名称
     * @param listener 监听器,需实现DialogInterface.OnClickListener接口
     * @return
     */
    public static AlertDialog two(Context context,
                                  int icon,
                                  String title,
                                  String message,
                                  String btnName,
                                  OnClickListener listener,
                                  String btnName1,
                                  OnClickListener listener1) {
        AlertDialog dialog = null;
        AlertDialog.Builder dialog1 = new AlertDialog.Builder(context);
        dialog1.setTitle(title);
        dialog1.setIcon(icon);
        dialog1.setMessage(message);
        dialog1.setPositiveButton(btnName, listener);
        dialog1.setNegativeButton(btnName1, listener1);
        dialog = dialog1.create();
        return dialog;
    }

    /**
     * @param context  上下文
     * @param icon     图标,如:R.drawable.icon
     * @param title    标题
     * @param message  显示内容
     * @param btnName  按钮名称
     * @param listener 监听器,需实现DialogInterface.OnClickListener接口
     * @return
     */
    public static AlertDialog three(Context context,
                                    int icon,
                                    String title,
                                    String message,
                                    String btnName,
                                    OnClickListener listener,
                                    String btnName1,
                                    OnClickListener listener1,
                                    String btnName2,
                                    OnClickListener listener2) {
        AlertDialog dialog = null;
        AlertDialog.Builder dialog1 = new AlertDialog.Builder(context);
        dialog1.setIcon(icon);
        dialog1.setMessage(message);
        dialog1.setPositiveButton(btnName, listener);
        dialog1.setNegativeButton(btnName1, listener1);
        dialog1.setNeutralButton(btnName2, listener2);
        dialog = dialog1.create();
        return dialog;
    }
}
2.在主布局文件中添加一个Button用于点击显示AlertDialog
3.新建Main2Activity用于当点击确定按钮时跳转
4.编写主类
package com.example.admin.alertdialog;

import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
    private Button btn_AlertDialogNew;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //实例化AlertDialog
        btn_AlertDialogNew = (Button) findViewById(R.id.button);
        //给AlertDialog添加监听
        btn_AlertDialogNew.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //调用封装的AlertDialog
                AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this);
                //设置对话框标题
                dialog.setTitle("提示");
                //设置对话框图标
                dialog.setIcon(R.mipmap.ic_launcher);
                //设置对话框显示内容
                dialog.setMessage("显示内容");
                //调用AlertDialog确定按钮
                dialog.setPositiveButton("确定", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface arg0, int arg1) {
                        //实例化Intent跳转
                        Intent intent = new Intent();
                        //指定跳转页面
                        intent.setClass(MainActivity.this, Main2Activity.class);
                        //开始跳转
                        startActivity(intent);
                        //使用Toast提示
                        Toast.makeText(MainActivity.this, "点击确定并跳转", Toast.LENGTH_SHORT).show();
                        //点击后关闭对话框
                        arg0.dismiss();
                    }
                });
                //调用AlertDialog取消按钮
                dialog.setNegativeButton("取消", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface arg0, int arg1) {
                        Toast.makeText(MainActivity.this, "点击取消", Toast.LENGTH_SHORT).show();
                        //点击后关闭对话框
                        arg0.dismiss();
                    }
                });
                //调用AlertDialog帮助按钮
                dialog.setNeutralButton("帮助", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface arg0, int arg1) {
                        Toast.makeText(MainActivity.this, "点击帮助", Toast.LENGTH_SHORT).show();
                        //点击后关闭对话框
                        arg0.dismiss();
                    }
                });
                //显示AlertDialog
                dialog.show();
            }
        });
    }
}
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值