44
55开发过程中一个简单的提交表单场景:
66
7- 1 . 提交信息,显示"信息提交中,请稍后...";
7+ 1、 提交信息,显示"信息提交中,请稍后...";
88
9- ![ loadingDialog1.jpg ] ( https://github.com/LinweiJ/LoadingDialog/blob/master/screen_shot/loadingDialog_0.gif )
9+ 2、信息提交成功,显示"信息提交成功";
1010
11- 2 . 信息提交成功,显示"信息提交成功";
11+ 3、等待 2 s,返回上一页面。
1212
13- ![ loadingDialog1.jpg] ( https://github.com/LinweiJ/LoadingDialog/blob/master/screen_shot/loadingDialog_0.gif )
14-
15- 3 . 等待 2 s,返回首页。
16-
17- ![ loadingDialog1.jpg] ( https://github.com/LinweiJ/LoadingDialog/blob/master/screen_shot/loadingDialog_0.gif )
13+ 这时,就需要使用加载框了。
1814
1915## 2、如何引用它?
2016
@@ -32,139 +28,119 @@ allprojects {
3228然后在module的build.gradle 添加:
3329```
3430dependencies {
35- compile 'com.github.LinweiJ:LoadingDialog:0.1 .0'
36- }
31+ compile 'com.github.LinweiJ:LoadingDialog:0.2 .0'
32+ }
3733```
3834
3935
4036
4137## 3、全新使用
4238
43- ### 3.1、开始显示处理
39+ 重新设计后 使用更简洁了
40+
41+ ### 3.1、Simple
42+
43+ #### 3.1.1 方法及参数
44+
45+ | 方法 | 描述 | 参数 |
46+ | ---------------------------------------- | --------------------- | ------------ |
47+ | SimpleLoadingDialog(@NonNull Context context) | 创建SimpleLoadingDialog | Context |
48+ | showFirst(String message) | 第一次显示 | 显示文字内容 |
49+ | showResult(String message) | 显示结果(切换文字而已) | 显示文字内容 |
50+ | dismissDelay(long delayMillis, DismissDelayEndCallback callback) | 延时消失 | 延时消失时间,消失时回调 |
51+
52+ #### 3.1.2 使用(try it)
4453
4554``` java
46- LoadingDialog loadingDialog = new LoadingDialog (context);
47- // 或 LoadingDialog loadingDialog = new LoadingDialog.Builder(context).create( );
55+ // SimpleLoadingDialog
56+ SimpleLoadingDialog mSimpleLoadingDialog = new SimpleLoadingDialog ( this );
4857// 显示加载框
49- loadingDialog. loading();
50- // 直接取消加载框
51- loadingDialog. cancel();
52- // 显示加载成功后取消加载框
53- loadingDialog. loadSuccess();
54- // 显示加载失败后取消加载框
55- loadingDialog. loadFail();
58+ mSimpleLoadingDialog. showFirst(" 加载中....." );
59+ // 模拟延时操作
60+ mHandler. postDelayed(new Runnable () {
61+ @Override
62+ public void run () {
63+ // 显示结果
64+ mSimpleLoadingDialog. showResult(" 加载6秒后加载成功" );
65+ // 延时消失
66+ mSimpleLoadingDialog. dismissDelay(5000 , new LoadingDialog .DismissDelayEndCallback () {
67+ @Override
68+ public void onEnd (LoadingDialog dialog ) {
69+ Toast . makeText(mActivity, " 加载成功显示5秒消失了" , Toast . LENGTH_SHORT ). show();
70+ }
71+ });
72+ }
73+ }, 6000 );
5674```
5775
58- ### 3.2、结果显示处理
76+ #### 3.1.3 效果图
77+
5978
60- ``` java
61- // 自定义参数方法一:通过LoadingDialog.Builder获得LoadingDialog时,定义参数
62- LoadingDialog . Builder builder = new LoadingDialog .Builder (this );
63- builder. setLoadingText(" 处理中..." )
64- .setFailText(" 处理失败" )
65- .setSuccessText(" 处理成功" )
66- // 设置延时5000ms才消失,可以不设置默认1000ms
67- .setDefaultDelayMillis(5000 )
68- // 设置默认延时消失事件, 可以不设置默认不调用延时消失事件
69- .setCancelDelayListener(new LoadingDialog .CancelDelayListener () {
70- @Override
71- public void success (LoadingDialog dialog ) {
72- dialog. cancel();// 加载框消失
73- Toast . makeText(mActivity, " 处理成功==延时消失" , Toast . LENGTH_SHORT ). show();
74- }
75-
76- @Override
77- public void fail (LoadingDialog dialog ) {
78- dialog. cancel();// 加载框消失
79- Toast . makeText(mActivity, " 处理失败==延时消失" , Toast . LENGTH_SHORT ). show();
80- }
81-
82- @Override
83- public void complete (LoadingDialog dialog ) {
84- dialog. cancel();// 加载框消失
85- Toast . makeText(mActivity, " 处理完成或直接延时消失==延时消失" , Toast . LENGTH_SHORT ). show();
86- }
87- });
88- LoadingDialog loadingDialog = builder. create();
89-
90- loadingDialog. loadSuccess(); 调用 CancelDelayListener . success()
91- loadingDialog. loadFail(); 调用 CancelDelayListener . fail()
92- loadingDialog. cancelDelay(); 调用 CancelDelayListener . complete()
93-
94-
95- // 注意 : 传入延时消失事件时,需要添加 dialog.cancel() 才能使加载框消失
96-
97- ```
98- ### 3.3、结果显示处理
79+
80+ ### 3.2、Lottie
81+
82+ #### 3.2.1 方法及参数
83+
84+ | 方法 | 描述 | 参数 |
85+ | ---------------------------------------- | --------------------- | ---------------------------------- |
86+ | LottieLoadingDialog(@NonNull Context context) | 创建LottieLoadingDialog | Context context |
87+ | showFirst(String message, int typeLottie, @Nullable String jsonFileName) | 第一次显示 | 显示文字内容,Lottie动画Type,Lottie动画文件(可空) |
88+ | showResult(String message, int typeLottie, @Nullable String jsonFileName) | 显示结果(切换文字及Lottie动画而已) | 显示文字内容,Lottie动画Type,Lottie动画文件(可空) |
89+ | dismissDelay(long delayMillis, DismissDelayEndCallback callback) | 延时消失 | 延时消失时间,消失时回调 |
90+
91+
92+
93+ #### 3.2.1 使用(try it)
9994
10095``` java
101- LoadingDialog loadingDialog = new LoadingDialog (context);
96+ // LottieLoadingDialog
97+ LottieLoadingDialog mLottieLoadingDialog = new LottieLoadingDialog (this );
10298// 显示加载框
103- loadingDialog. loading(" 处理中..." );
104- // 显示处理成功后取消加载框
105- loadingDialog. loadSuccess(" 处理成功" );
106- // 显示处理失败后取消加载框
107- loadingDialog. loadFail(" 处理失败" );
108- // 显示处理完成后取消加载框
109- loadingDialog. loadComplete(" 处理完成" );
110-
111- // 显示审核成功后延时3s消失 调用SuccessCancelDelayListener.success()
112- loadingDialog. loadSuccess(" 审核成功" , 3000 , new SuccessCancelDelayListener () {
113- @Override
114- public void success (LoadingDialog dialog ) {
115- dialog. cancel();// 加载框消失
116- }
117- });
118- // 显示审核失败后延时3s消失 调用SuccessCancelDelayListener.fail()
119- loadingDialog. loadFail(" 审核失败" , 3000 , new FailCancelDelayListener () {
120- @Override
121- public void fail (LoadingDialog dialog ) {
122- dialog. cancel();// 加载框消失
123- Toast . makeText(mActivity, " 审核失败==延时3s消失" , Toast . LENGTH_SHORT ). show();
124- }
125- });
126- // 显示审核完成后延时3s消失 调用CompleteCancelDelayListener.complete()
127- loadingDialog. loadComplete(" 审核完成" , 3000 , new CompleteCancelDelayListener () {
128- @Override
129- public void complete (LoadingDialog dialog ) {
130- dialog. cancel();// 加载框消失
131- Toast . makeText(mActivity, " 审核完成==延时3s消失" , Toast . LENGTH_SHORT ). show();
132- }
133- });// 显示处理成功后延时3s消失并弹出toast
134- // 延时3s消失 调用CompleteCancelDelayListener.complete()
135- loadingDialog. cancelDelay(3000 , new CompleteCancelDelayListener () {
136- @Override
137- public void complete (LoadingDialog dialog ) {
138- dialog. cancel();// 加载框消失
139- }
140- });
99+ mLottieLoadingDialog. showFirst(" 加载中..." , TYPE_LOADING_1 , null );
100+ new Handler (). postDelayed(new Runnable () {
101+ @Override
102+ public void run () {
103+ // 显示结果
104+ mLottieLoadingDialog. showResult(" 加载4秒后加载成功..." , TYPE_SUCCESS_1 , null );
105+ // 延时消失
106+ mLottieLoadingDialog. dismissDelay(2000 , new LoadingDialog .DismissDelayEndCallback () {
107+ @Override
108+ public void onEnd (LoadingDialog dialog ) {
109+ Toast . makeText(mActivity, " 加载成功显示2秒消失了" , Toast . LENGTH_LONG ). show();
110+ }
111+ });
112+ }
113+ }, 4000 );
141114
115+ ```
142116
117+ #### 3.1.2 效果图
143118
144- ```
145- ### 3.4、其他参数
146119
147- ```
148120
121+ ### 3.3、其他
149122
123+ #### 3.3.1 、不可取消
150124
125+ ``` java
126+ // 跟Dialog一样样的
127+ mLottieLoadingDialog. setCancelable(false );
128+ mLottieLoadingDialog. setCanceledOnTouchOutside(false );
151129```
152130
153- ### 3.4 、效果图
131+ #### 3.3.2 、效果图
154132
155- ![ loadingDialog.gif] ( https://github.com/LinweiJ/LoadingDialog/blob/master/screen_shot/loadingDialog_2.gif )
156133
157- ## 4. 快速构建Builder
158134
159- #### 4.1、Simple模式
135+ ## 4. 自定义
160136
161- #### 4.2、Lottie模式
137+ ####
162138
163139
164140
165141## 5、更多
166142
167- 更多细节可以参考 demo / 示例
143+ 更多细节可以参考 app / 示例
168144
169145
170146
0 commit comments