今天先来无事,看到大神的开源弹窗框架 SmartShow,决心体验一把。大神还没写基础用法的文档,我就先抛砖引玉一下。
参考大神GitHub:GitHub - vincent-series/smart-show: Toast # Snackbar # Dialog
话不多说,直接上干货!!!
1.导入仓库
maven { url 'https://s01.oss.sonatype.org/content/repositories/snapshots/' }
maven { url 'https://jitpack.io' }
注释:第二行可不导入(都导入肯定没错)
2.导入依赖
implementation "io.github.vincent-series:smart-toast:4.0.7"
//如需要注解处理功能,引入注解处理库
implementation "io.github.vincent-series:annotation-compiler:1.0.3"
implementation "io.github.vincent-series:smart-snackbar:4.0.8"
//material lib,such as 1.5.0
implementation 'com.google.android.material:material:1.5.0'
implementation "io.github.vincent-series:smart-dialog:4.0.7"
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'
最新版没有all依赖的导入了,只能单项一条条全部导入进去。(大神微信说后续后添加all的依赖),期待大神的杰作。
3.SmartToast基础用法
1. SmartToast.classic().show("弹窗文本");
4.SmartToast基础简单进阶用法(加了个图标)
SmartToast.classic().config()
.iconResource(R.mipmap.ic_launcher)
.iconSizeDp(22f)
.apply()
.show("加了个图标的弹窗文本");
5.SmartSnackBar基础用法
SmartSnackBar.bottom(MainActivity2.this)
.config()
.apply()
.show("在底部弹出文本");
6.SmartSnackBar基础简单进阶用法(加了个图标)
SmartSnackBar.top(MainActivity2.this)
.config()
.icon(R.mipmap.ic_launcher)
.iconSizeDp(20f)
.apply()
.show("这是top弹出的SmartSnackBar");
7.SmartDialog用法(弹窗提示)
SmartDialog.ensure()
.config(config ->{
config.title("删除提示"); //弹窗标题
config.delayToConfirm(3); //设置延时3秒,倒计时3秒
config.message("请不要删除,一旦删除,数据无法找回"); //弹窗主要信息内容
config.confirmBtnLabelStyle(newTextStyle(getColor(R.color.purple_700),18f,true)); //按钮样式
config.cancelBtnListener(dialog -> {
dialog.dismiss();
return null;
});
return Unit.INSTANCE;
})
.create(MainActivity.this).show(); //别忘记show
原创内容,转载请注明出处,谢谢。
参考链接:GitHub - vincent-series/smart-show: Toast # Snackbar # Dialog