感觉系统自带的对话框弹出太生硬?那就试试NiftyDialogEffects吧,类似于(Nifty Modal Window Effects),效果是模仿里面实现的

ScreenShot

NiftyDialogEffects-多种弹出效果的对话框-LMLPHP . NiftyDialogEffects-多种弹出效果的对话框-LMLPHP . NiftyDialogEffects-多种弹出效果的对话框-LMLPHP .

NiftyDialogEffects-多种弹出效果的对话框-LMLPHP

gradle配置如下:

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

Or using JitPack:

repositories {
maven { url "https://jitpack.io" }
}
dependencies {
compile 'com.github.sd6352051:NiftyDialogEffects:1.0.0'
}

还在使用eclipse的同学请在github上下载jar吧,这里就不提供了。

NiftyDialogEffects提供了以下效果:

FadeinSlideleftSlidetopSlideBottomSliderightFallNewspagerFliphFlipv,RotateBottomRotateLeftSlitShakeSidefill

 

使用方式

 NiftyDialogBuilder dialogBuilder=NiftyDialogBuilder.getInstance(this);

dialogBuilder
.withTitle("Modal Dialog")
.withMessage("This is a modal Dialog.")
.show();

  dialogBuilder

    .withTitle("Modal Dialog")                                  //对话框标题
.withTitleColor("#FFFFFF") //标题颜色
.withDividerColor("#11000000") //分割线颜色
.withMessage("This is a modal Dialog.") //正文
.withMessageColor("#FFFFFFFF") //正文颜色
.withDialogColor("#FFE74C3C") //对话框颜色
.withIcon(getResources().getDrawable(R.drawable.icon)) //对话框左上角显示的icon
.withDuration(700) //动画效果时长
.withEffect(effect) //设置动画效果
.withButton1Text("OK") //确定
.withButton2Text("Cancel") //取消
.isCancelableOnTouchOutside(true) //触摸是消失
.setCustomView(R.layout.custom_view,v.getContext()) //自定义展示view
.setButton1Click(new View.OnClickListener() { //确定按钮监听事件
@Override
public void onClick(View v) {
Toast.makeText(v.getContext(), "i'm btn1", Toast.LENGTH_SHORT).show();
}
})
.setButton2Click(new View.OnClickListener() { //取消按钮监听事件 @Override
public void onClick(View v) {
Toast.makeText(v.getContext(),"i'm btn2",Toast.LENGTH_SHORT).show();
}
})
.show();

github连接地址:https://github.com/sd6352051/NiftyDialogEffects

05-07 15:18
查看更多