一个CommonDialog的工具类,
思路:首先在该工具类里面new一个Dialog,然后再调用该dialog的setContentView设置自己要定制的弹框View,在CommonDialog该类定义两个接口:
public interface DialogPositiveListener {
        void onClick();
    }

public interface DialogNegativeListener {
        void onClick();
    }
然后再定义两个SetListener方法作为new 出来的CommonDialog对象调用,传进来的两个实现DialogPositiveListener,DialogNegativeListener实现这两个接口的listener,作为两个自定义确定,取消按钮时需要做的操作的listener:
public void setPositiveListener(DialogPositiveListener positiveListener) {
        this.positiveListener = positiveListener;
    }

public void setNegativeListener(DialogNegativeListener negativeListener) {
        this.negativeListener = negativeListener;
    }
总体思路大概就是这样,下面是CommonDialog调用的三种不同方式(自认为调用方式还是比较点单的,呵呵。。。):
switch (v.getId()) {
        case R.id.btn1:
            CommonDialog dialog1 = new CommonDialog(this);
            dialog1.setPositiveListener(new DialogPositiveListener() {
                @Override
                public void onClick() {
                    ToastUtils.show(MainActivity.this, "确定");
                }
            });
            dialog1.initDialog("您确定要删除收藏?").show();
            break;
        case R.id.btn2:
            CommonDialog dialog2 = new CommonDialog(this);
            dialog2.setPositiveListener(new DialogPositiveListener() {
                @Override
                public void onClick() {
                    ToastUtils.show(MainActivity.this, "确定");
                }
            });
            dialog2.setNegativeListener(new DialogNegativeListener() {
                @Override
                public void onClick() {
                    ToastUtils.show(MainActivity.this, "取消");
                }
            });
            dialog2.initDialog("您确定要取消该收藏?").show();
            break;
        case R.id.btn3:
            CommonDialog dialog3 = new CommonDialog(this);
            dialog3.setPositiveListener(new DialogPositiveListener() {
                @Override
                public void onClick() {
                    ToastUtils.show(MainActivity.this, "再看看");
                }
            });
            dialog3.setNegativeListener(new DialogNegativeListener() {
                @Override
                public void onClick() {
                    ToastUtils.show(MainActivity.this, "退出");
                }
            });
            dialog3.initDialog("您确定现在退出app吗?", "退出", "再看看").show();
            break;
        default:
            break;
        }

更多相关文章

  1. android的SharedPreferences详解
  2. More than one file was found with OS independent path 'lib/a
  3. Android(安卓)ToolBar inflateMenu 不生效
  4. Android(安卓)中关于属性动画的一些思考,或许能为你解决一定的性
  5. Android(安卓)volley封装实践其二
  6. Android(安卓)studio 导出项目为jar
  7. Android(安卓)的系统属性(SystemProperties)设置分析
  8. No label views point to this text field with an android:labe
  9. android ndk 环境搭建及基本编程思路

随机推荐

  1. android-opencv 版本下JNI Android.mk文
  2. android 4.1 UI 工具测试的新利器, uiauto
  3. Android之Sax解析xml(4)
  4. iOS 不能播放远程视频(Android(安卓)可以)
  5. Android2.3 的安装地址
  6. Android(安卓)app内部启动qq/跳转到QQ添
  7. [Android]使用Dagger 2依赖注入 - 图表创
  8. Android程序如何升级
  9. 初学Android,OpenGL ES之使用纹理(八十三
  10. menu.addIntentOptions 添加动态菜单