Skip to content

Commit 81847ae

Browse files
committed
rename OnLoadingListener to OnStatusChangedListener
rename CompleteDrawable to SuccessDrawable update README.md
1 parent 46e3ef4 commit 81847ae

File tree

5 files changed

+183
-236
lines changed

5 files changed

+183
-236
lines changed

Loadingbutton/src/main/java/com/flod/loadingbutton/LoadingButton.java

Lines changed: 53 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ interface STATUS {
9595

9696

9797
private CircularProgressDrawable mLoadingDrawable;
98-
private OnLoadingListener mOnLoadingListener;
98+
private OnStatusChangedListener mListener;
9999
private EndDrawable mEndDrawable;
100100
private int mLoadingSize;
101101
private int mLoadingPosition;
@@ -135,7 +135,7 @@ private void init(Context context, AttributeSet attrs) {
135135
int loadingDrawableSize = array.getDimensionPixelSize(R.styleable.LoadingButton_loadingEndDrawableSize, (int) (enableShrink ? getTextSize() * 2 : getTextSize()));
136136
int loadingDrawableColor = array.getColor(R.styleable.LoadingButton_loadingDrawableColor, getTextColors().getDefaultColor());
137137
int loadingDrawablePosition = array.getInt(R.styleable.LoadingButton_loadingDrawablePosition, POSITION.START);
138-
int endCompleteDrawableResId = array.getResourceId(R.styleable.LoadingButton_endCompleteDrawable, -1);
138+
int endSuccessDrawable = array.getResourceId(R.styleable.LoadingButton_endSuccessDrawable, -1);
139139
int endFailDrawableResId = array.getResourceId(R.styleable.LoadingButton_endFailDrawable, -1);
140140
int endDrawableAppearTime = array.getInt(R.styleable.LoadingButton_endDrawableAppearTime, EndDrawable.DEFAULT_APPEAR_DURATION);
141141
int endDrawableDuration = array.getInt(R.styleable.LoadingButton_endDrawableDuration, 900);
@@ -153,8 +153,8 @@ private void init(Context context, AttributeSet attrs) {
153153
setEnableCenterDrawables(true);
154154

155155
//initLoadingDrawable
156-
if (endCompleteDrawableResId != -1 || endFailDrawableResId != -1) {
157-
mEndDrawable = new EndDrawable(endCompleteDrawableResId, endFailDrawableResId);
156+
if (endSuccessDrawable != -1 || endFailDrawableResId != -1) {
157+
mEndDrawable = new EndDrawable(endSuccessDrawable, endFailDrawableResId);
158158
mEndDrawable.mAppearAnimator.setDuration(endDrawableAppearTime);
159159
mEndDrawable.setKeepDuration(endDrawableDuration);
160160
}
@@ -211,8 +211,8 @@ public void onAnimationStart(Animator animation) {
211211
//begin shrink
212212
curStatus = STATUS.SHRINKING;
213213
isSizeChanging = true;
214-
if (mOnLoadingListener != null) {
215-
mOnLoadingListener.onShrinking();
214+
if (mListener != null) {
215+
mListener.onShrinking();
216216
}
217217

218218
LoadingButton.super.setText("", BufferType.NORMAL);
@@ -224,8 +224,8 @@ public void onAnimationStart(Animator animation) {
224224
//begin restore
225225
stopLoading();
226226
curStatus = STATUS.RESTORING;
227-
if (mOnLoadingListener != null) {
228-
mOnLoadingListener.onRestoring();
227+
if (mListener != null) {
228+
mListener.onRestoring();
229229
}
230230

231231
}
@@ -244,8 +244,8 @@ public void onAnimationEnd(Animator animation) {
244244
isSizeChanging = false;
245245
nextReverse = false;
246246
toIde();
247-
if (mOnLoadingListener != null) {
248-
mOnLoadingListener.onRestored();
247+
if (mListener != null) {
248+
mListener.onRestored();
249249
}
250250
}
251251
}
@@ -346,8 +346,8 @@ private void startLoading() {
346346
mLoadingDrawable.start();
347347
}
348348

349-
if (mOnLoadingListener != null) {
350-
mOnLoadingListener.onLoadingStart();
349+
if (mListener != null) {
350+
mListener.onLoadingStart();
351351
}
352352
}
353353

@@ -357,8 +357,8 @@ private void startLoading() {
357357
private void stopLoading() {
358358
if (mLoadingDrawable.isRunning()) {
359359
mLoadingDrawable.stop();
360-
if (mOnLoadingListener != null) {
361-
mOnLoadingListener.onLoadingStop();
360+
if (mListener != null) {
361+
mListener.onLoadingStop();
362362
}
363363
}
364364

@@ -426,7 +426,7 @@ public void start() {
426426
* 完成加载,显示对应的EndDrawable
427427
* <p>
428428
*
429-
* @param isSuccess 是否加载成功,将参数传递给回调{@link OnLoadingListener#onCompleted(boolean)} ()},
429+
* @param isSuccess 是否加载成功,将参数传递给回调{@link OnStatusChangedListener#onCompleted(boolean)} ()},
430430
*/
431431
public void complete(boolean isSuccess) {
432432
stopLoading();
@@ -447,14 +447,14 @@ public void complete(boolean isSuccess) {
447447
}
448448

449449
else {
450-
if (mOnLoadingListener != null) {
451-
mOnLoadingListener.onCompleted(isSuccess);
450+
if (mListener != null) {
451+
mListener.onCompleted(isSuccess);
452452
}
453453
}
454454
} else {
455455
//No EndDrawable,disableShrink
456-
if (mOnLoadingListener != null) {
457-
mOnLoadingListener.onCompleted(isSuccess);
456+
if (mListener != null) {
457+
mListener.onCompleted(isSuccess);
458458
}
459459

460460
if (enableRestore)
@@ -482,8 +482,8 @@ public void cancel(boolean withRestoreAnim) {
482482
if (curStatus != STATUS.IDE) {
483483
cancelAllRunning(withRestoreAnim);
484484

485-
if (mOnLoadingListener != null)
486-
mOnLoadingListener.onCanceled();
485+
if (mListener != null)
486+
mListener.onCanceled();
487487
}
488488
}
489489

@@ -608,29 +608,29 @@ public int getLoadingEndDrawableSize() {
608608
}
609609

610610

611-
public LoadingButton setCompleteDrawable(@DrawableRes int id) {
611+
public LoadingButton setSuccessDrawable(@DrawableRes int drawableRes) {
612612
if (mEndDrawable == null)
613-
mEndDrawable = new EndDrawable(id, -1);
613+
mEndDrawable = new EndDrawable(drawableRes, -1);
614614
else {
615-
mEndDrawable.setCompleteDrawable(id);
615+
mEndDrawable.setSuccessDrawable(drawableRes);
616616
}
617617
return this;
618618
}
619619

620-
public LoadingButton setCompleteDrawable(Drawable drawable) {
620+
public LoadingButton setSuccessDrawable(Drawable drawable) {
621621
if (mEndDrawable == null)
622622
mEndDrawable = new EndDrawable(drawable, null);
623623
else {
624-
mEndDrawable.setCompleteDrawable(drawable);
624+
mEndDrawable.setSuccessDrawable(drawable);
625625
}
626626
return this;
627627
}
628628

629-
public LoadingButton setFailDrawable(@DrawableRes int id) {
629+
public LoadingButton setFailDrawable(@DrawableRes int drawableRes) {
630630
if (mEndDrawable == null)
631-
mEndDrawable = new EndDrawable(-1, id);
631+
mEndDrawable = new EndDrawable(-1, drawableRes);
632632
else {
633-
mEndDrawable.setFailDrawable(id);
633+
mEndDrawable.setFailDrawable(drawableRes);
634634
}
635635
return this;
636636
}
@@ -730,7 +730,7 @@ protected void onDraw(Canvas canvas) {
730730
@SuppressWarnings("SameParameterValue")
731731
public class EndDrawable {
732732
private static final int DEFAULT_APPEAR_DURATION = 300;
733-
private Bitmap mCompleteBitmap;
733+
private Bitmap mSuccessBitmap;
734734
private Bitmap mFailBitmap;
735735
private Paint mPaint;
736736
private Rect mBounds = new Rect();
@@ -742,14 +742,14 @@ public class EndDrawable {
742742
private boolean isShowing;
743743
private Runnable mRunnable;
744744

745-
private EndDrawable(@Nullable Drawable completeDrawable, @Nullable Drawable failDrawable) {
746-
setCompleteDrawable(completeDrawable);
745+
private EndDrawable(@Nullable Drawable successDrawable, @Nullable Drawable failDrawable) {
746+
setSuccessDrawable(successDrawable);
747747
setFailDrawable(failDrawable);
748748
init();
749749
}
750750

751-
private EndDrawable(@DrawableRes int completeResId, @DrawableRes int failResId) {
752-
setCompleteDrawable(completeResId);
751+
private EndDrawable(@DrawableRes int successResId, @DrawableRes int failResId) {
752+
setSuccessDrawable(successResId);
753753
setFailDrawable(failResId);
754754
init();
755755
}
@@ -782,8 +782,8 @@ public void run() {
782782
public void onAnimationStart(Animator animation) {
783783
super.onAnimationStart(animation);
784784
curStatus = STATUS.END_DRAWABLE_SHOWING;
785-
if (mOnLoadingListener != null) {
786-
mOnLoadingListener.onEndDrawableAppear(!isFail, mEndDrawable);
785+
if (mListener != null) {
786+
mListener.onEndDrawableAppear(!isFail, mEndDrawable);
787787
}
788788
}
789789

@@ -792,8 +792,8 @@ public void onAnimationEnd(Animator animation) {
792792
if (isShowing) {
793793
postDelayed(mRunnable, mKeepDuration);
794794
}
795-
if (mOnLoadingListener != null) {
796-
mOnLoadingListener.onCompleted(!isFail);
795+
if (mListener != null) {
796+
mListener.onCompleted(!isFail);
797797
}
798798
}
799799
});
@@ -916,7 +916,7 @@ private int[] calcOffset(Canvas canvas, Rect bounds, @POSITION int pos) {
916916
*/
917917
private void draw(Canvas canvas) {
918918
if (getAnimValue() > 0 && mLoadingDrawable != null) {
919-
final Bitmap targetBitMap = isFail ? mFailBitmap : mCompleteBitmap;
919+
final Bitmap targetBitMap = isFail ? mFailBitmap : mSuccessBitmap;
920920
if (targetBitMap != null) {
921921
final Rect bounds = mLoadingDrawable.getBounds();
922922
mBounds.right = bounds.width();
@@ -963,14 +963,14 @@ public void setKeepDuration(long keepDuration) {
963963
}
964964

965965

966-
public void setCompleteDrawable(Drawable drawable) {
967-
mCompleteBitmap = getBitmap(drawable);
966+
public void setSuccessDrawable(Drawable drawable) {
967+
mSuccessBitmap = getBitmap(drawable);
968968
}
969969

970-
public void setCompleteDrawable(@DrawableRes int id) {
970+
public void setSuccessDrawable(@DrawableRes int id) {
971971
if (id != -1) {
972972
Drawable drawable = ContextCompat.getDrawable(getContext(), id);
973-
mCompleteBitmap = getBitmap(drawable);
973+
mSuccessBitmap = getBitmap(drawable);
974974
}
975975
}
976976

@@ -982,7 +982,7 @@ public void setFailDrawable(@DrawableRes int id) {
982982
}
983983

984984
public void setFailDrawable(Drawable drawable) {
985-
mCompleteBitmap = getBitmap(drawable);
985+
mSuccessBitmap = getBitmap(drawable);
986986
}
987987

988988
}
@@ -1020,85 +1020,55 @@ public void getOutline(View view, Outline outline) {
10201020
if (enableShrink && mShrinkShape == ShrinkShape.OVAL
10211021
&& (curStatus == STATUS.LOADING || curStatus == STATUS.END_DRAWABLE_SHOWING)) {
10221022
outline.setOval(0, 0, getShrinkSize(), getShrinkSize());
1023-
} else{
1023+
} else {
10241024
super.getOutline(view, outline);
10251025
}
10261026

10271027
}
10281028
}
10291029

1030-
public interface OnLoadingListener {
1031-
void onLoadingStart();
1032-
1033-
void onLoadingStop();
1034-
1035-
void onShrinking();
1036-
1037-
void onEndDrawableAppear(boolean isSuccess, EndDrawable endDrawable);
1038-
1039-
void onCompleted(boolean isSuccess);
1040-
1041-
void onCanceled();
1042-
1043-
void onRestoring();
1044-
1045-
void onRestored();
10461030

1031+
/**
1032+
* 状态回调
1033+
* start -> onShrinking -> onLoadingStart -> complete -> onCompleted
1034+
* -> onLoadingStop -> onEndDrawableAppear -> onRestoring -> onRestored
1035+
*/
1036+
public static class OnStatusChangedListener {
10471037

1048-
}
1049-
1050-
1051-
public static class OnLoadingListenerAdapter implements OnLoadingListener {
1052-
1053-
@Override
10541038
public void onShrinking() {
10551039

10561040
}
10571041

1058-
1059-
@Override
10601042
public void onLoadingStart() {
10611043

10621044
}
10631045

1064-
@Override
10651046
public void onLoadingStop() {
10661047

1067-
10681048
}
10691049

1070-
@Override
10711050
public void onEndDrawableAppear(boolean isSuccess, EndDrawable endDrawable) {
10721051

10731052
}
10741053

1075-
1076-
@Override
10771054
public void onRestoring() {
10781055

10791056
}
10801057

1081-
@Override
10821058
public void onRestored() {
10831059

10841060
}
1085-
1086-
@Override
10871061
public void onCompleted(boolean isSuccess) {
10881062

10891063
}
10901064

1091-
1092-
@Override
10931065
public void onCanceled() {
10941066

10951067
}
1096-
1097-
10981068
}
10991069

1100-
public LoadingButton setOnLoadingListener(OnLoadingListener onLoadingListener) {
1101-
mOnLoadingListener = onLoadingListener;
1070+
public LoadingButton setOnStatusChangedListener(OnStatusChangedListener listener) {
1071+
mListener = listener;
11021072
return this;
11031073
}
11041074

Loadingbutton/src/main/res/values/attrs.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<enum name="Bottom" value="3" />
2222
</attr>
2323

24-
<attr name="endCompleteDrawable" format="reference" />
24+
<attr name="endSuccessDrawable" format="reference" />
2525
<attr name="endFailDrawable" format="reference" />
2626
<attr name="endDrawableAppearTime" format="integer" />
2727
<attr name="endDrawableDuration" format="integer" />

0 commit comments

Comments
 (0)