各种dialog的封装实现
来源:互联网 发布:淘宝卖家全网举报在哪 编辑:程序博客网 时间:2024/05/31 05:29
这里封装了常用的Toast,Loading, 提示框,对话框,单选对话框,列表对话框,底部弹出对话框等,这里做个记录,方便以后复用,使用起来也非常简单和方便。
调用方式如下:
- package com.e6gps.dialogsetdemo;
-
- import android.app.Dialog;
- import android.content.DialogInterface;
- import android.os.Bundle;
- import android.support.v7.app.AppCompatActivity;
- import android.view.View;
- import android.view.View.OnClickListener;
- import android.widget.Button;
-
- import com.e6gps.dialogsetdemo.dialog.CommonDialog;
- import com.e6gps.dialogsetdemo.dialog.ListSelectDialog;
- import com.e6gps.dialogsetdemo.dialog.LoadingDialogUtil;
- import com.e6gps.dialogsetdemo.dialog.PhotoDialogBuilder;
- import com.e6gps.dialogsetdemo.dialog.SingleSelectDialog;
-
-
-
-
-
- public class MainActivity extends AppCompatActivity implements OnClickListener {
-
- private Button mBtn_loading;
-
- private Dialog mDialog;
- private Button mBtn_toast;
- private Button mBtn_hint;
- private Button mBtn_dialog;
- private Button mBtn_selelct_list_dialog;
- private Button mBtn_single_list_dialog;
- private Button mBtn_takephoto_dialog;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
-
- mBtn_loading = (Button) findViewById(R.id.btn_loading);
- mBtn_toast = (Button) findViewById(R.id.btn_toast);
- mBtn_hint = (Button) findViewById(R.id.btn_hint);
- mBtn_dialog = (Button) findViewById(R.id.btn_dialog);
- mBtn_selelct_list_dialog = (Button) findViewById(R.id.btn_selelct_list_dialog);
- mBtn_single_list_dialog = (Button) findViewById(R.id.btn_single_list_dialog);
- mBtn_takephoto_dialog = (Button) findViewById(R.id.btn_takephoto_dialog);
-
- mBtn_loading.setOnClickListener(this);
- mBtn_toast.setOnClickListener(this);
- mBtn_hint.setOnClickListener(this);
- mBtn_dialog.setOnClickListener(this);
- mBtn_selelct_list_dialog.setOnClickListener(this);
- mBtn_single_list_dialog.setOnClickListener(this);
- mBtn_takephoto_dialog.setOnClickListener(this);
- }
-
- @Override
- public void onClick(View v) {
- switch (v.getId()) {
- case R.id.btn_loading:
-
- mDialog = LoadingDialogUtil.createLoadingDialog(MainActivity.this, "正在加载数据请稍候", true);
- mDialog.show();
-
- break;
- case R.id.btn_toast:
- ToastUtils.show(MainActivity.this, "我是吐司");
- break;
-
- case R.id.btn_hint:
- {
- CommonDialog.Builder builder = new CommonDialog.Builder(MainActivity.this);
- builder.setTitle("提示");
- builder.setMessage("已经是最新版本");
- builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
-
- }
- });
- builder.create().show();
- }
-
- break;
- case R.id.btn_dialog:
-
- CommonDialog.Builder builder = new CommonDialog.Builder(MainActivity.this);
- builder.setTitle("拨打电话");
- builder.setMessage("15112403565");
- builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- ToastUtils.show(MainActivity.this, "取消");
-
- }
- });
- builder.setPositiveButton("拨打", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- ToastUtils.show(MainActivity.this, "确定");
- }
- });
- builder.create().show();
-
- break;
-
- case R.id.btn_selelct_list_dialog:
- {
-
- final String[] values = new String[]{"今天", "明天","后天"};
- final ListSelectDialog dialog = new ListSelectDialog(this, "标记为", values);
- dialog.setOnSubmitClickListener(new ListSelectDialog.OnSubmitClickListener() {
- @Override
- public void onSubmitClick(int pos) {
- ToastUtils.show(MainActivity.this,values[pos]);
- dialog.hidden();
- }
- });
- dialog.show();
- }
- break;
-
- case R.id.btn_single_list_dialog:
- {
-
- final String[] values = new String[]{"太丑了", "没有钱"};
- SingleSelectDialog dialog = new SingleSelectDialog(this, "选择原因", values);
- dialog.setSelect(0);
- dialog.setOnSubmitClickListener(new SingleSelectDialog.OnSubmitClickListener() {
- @Override
- public void onSubmitClick(int pos) {
-
- ToastUtils.show(MainActivity.this,values[pos]);
- }
- });
- dialog.show();
- }
- break;
-
- case R.id.btn_takephoto_dialog:
- {
- final PhotoDialogBuilder photoDialogBuilder = new PhotoDialogBuilder(this);
- photoDialogBuilder.setOnPhotoAlbum(new PhotoDialogBuilder.OnPhotoAlbumClickListner() {
- @Override
- public void onPhotoAlbum() {
- ToastUtils.show(MainActivity.this,"相册上传");
- }
- });
- photoDialogBuilder.setOnPhotoCamera(new PhotoDialogBuilder.OnPhotoCameraClickListner() {
- @Override
- public void onPhotoCamera() {
- ToastUtils.show(MainActivity.this,"拍照上传");
- }
- });
- photoDialogBuilder.setOnBtncancle(new PhotoDialogBuilder.OnBtnCancleClickListner() {
- @Override
- public void onBtnCancle() {
- photoDialogBuilder.hidden();
- }
- });
- photoDialogBuilder.show();
- }
- break;
-
- default:
- break;
- }
- }
- }
下面是效果图:
需要源代码,点击这里下载。。。
0 0