绚丽多彩的对话框NiftyDialogEffects(多种颜色和动画进入效果)

说明:系统默认的对话框略显单调,要想实现绚丽的对话框效果,改变对话框各种颜色,对话框进入和退出的动画效果,可以使用下边方法,实现方式和经典dialog差不多
使用方法:
buildgrilde中添加依赖:

dependencies {
    compile 'com.nineoldandroids:library:2.4.0'
    compile 'com.github.sd6352051.niftydialogeffects:niftydialogeffects:1.0.0@aar'
}

Java代码中直接使用:

   final NiftyDialogBuilder dialogBuilder=NiftyDialogBuilder.getInstance(getContext());
                            dialogBuilder
                                    .withTitle("登录成功!")                                  //.withTitle(null)  no title
                                    .withTitleColor("#FFFFFF")                                  //def
                                    .withDividerColor("#11000000")                              //def
                                    .withMessage("今日尚未签到")                     //.withMessage(null)  no Msg
                                    .withMessageColor("#FFFFFFFF")                              //def  | withMessageColor(int resid)
                                    .withDialogColor("#FFE74C3C")                               //def  | withDialogColor(int resid)
                                    .withIcon(getResources().getDrawable(R.drawable.icon))
                                    .withDuration(1000)                                          //def
                                    .withEffect(Effectstype.Fall)                                       //设置对话框弹出动画样式3D旋转,不设置默认淡入淡出
                                    .withButton1Text("知道了")                                      //def gone
//                                    .withButton2Text("Cancel")
                                    //  设置是否模态,默认false,表示模态,
                                    //要求必须采取行动才能继续进行剩下的操作 | isCancelable(true)

                                    .isCancelableOnTouchOutside(true)                           //def    | isCancelable(true)
//                                    .setCustomView(R.layout.custom_view,v.getContext())         //.setCustomView(View or ResId,context)
                                    .setButton1Click(new View.OnClickListener() {
                                        @Override
                                        public void onClick(View v) {
                                           dialogBuilder.dismiss();
                                        }
                                    })
//                                    .setButton2Click(new View.OnClickListener() {
//                                        @Override
//                                        public void onClick(View v) {
//                                            dialogBuilder.dismiss();
//                                        }
//                                    })
                                    .show();

附:参数值

 // 重点设置
    .withEffect(effect)        //设置对话框弹出样式
    .setCustomView(R.layout.custom_view, v.getContext()) // 设置自定义对话框的布局
    .withDuration(700)              //动画显现的时间(时间长就类似放慢动作)

    // 基本设置
     .withTitle("Modal Dialog")         //设置对话框标题
     .withTitleColor("#FFFFFF")          //设置标题字体颜色
     .withDividerColor("#11000000")      //设置分隔线的颜色
      .withMessage(message)                //设置对话框显示内容
      .withMessageColor("#FFFFFFFF")       //设置消息字体的颜色
      .withDialogColor("#FFE74C3C")        //设置对话框背景的颜色
       .withIcon(getResources().getDrawable(R.drawable.icon)) //设置标题的图标
   // 设置是否模态,默认false,表示模态,
   //要求必须采取行动才能继续进行剩下的操作 | isCancelable(true)
      .isCancelableOnTouchOutside(true)
      .withButton1Text("OK")               //设置按钮1的文本
      .withButton2Text("Cancel")          //设置按钮2的文本

      .setButton1Click(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Toast.makeText(v.getContext(),   "I am btnOk", Toast.LENGTH_SHORT).show();
                        dialogBuilder.dismiss();
                    }
                })
       .setButton2Click(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Toast.makeText(v.getContext(), "I am btnCancel", Toast.LENGTH_SHORT).show();
                        dialogBuilder.dismiss();
                    }
                })
                .show();

动画类型的效果值:
Effectstype.Fadein : 从里向外弹出
Effectstype.Slideright : 从右弹出
Effectstype.Slideleft : 从左弹出
Effectstype.Slidetop : 从上弹出
Effectstype.SlideBottom : 从下弹出
Effectstype.Newspager : 旋转弹出
Effectstype.Fall : 从四周向里弹出
Effectstype.Sidefill : 从四周斜侧弹出
Effectstype.Fliph : 3D水平翻转弹出
Effectstype.Flipv : 3D垂直翻转弹出
Effectstype.RotateBottom : 3D底部回转弹出
Effectstype.RotateLeft : 3D左侧回转弹出
Effectstype.Shake : 抖动弹出
Effectstype.Slit : 3D从中间切入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值