Skip to content

Commit 6effdcb

Browse files
committed
Hide / restore buttons shadows during ring effect
1 parent bc152b1 commit 6effdcb

File tree

1 file changed

+22
-16
lines changed

1 file changed

+22
-16
lines changed

circle-menu/src/main/java/com/ramotion/circlemenu/CircleMenuView.java

Lines changed: 22 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -359,37 +359,43 @@ public void onAnimationEnd(Animator animation) {
359359

360360
final AnimatorSet firstSet = new AnimatorSet();
361361
firstSet.playTogether(rotateButton, ring);
362-
firstSet.addListener(new AnimatorListenerAdapter() {
362+
363+
final AnimatorSet result = new AnimatorSet();
364+
result.play(firstSet).before(lastSet);
365+
result.addListener(new AnimatorListenerAdapter() {
363366
@Override
364367
public void onAnimationStart(Animator animation) {
368+
mIsAnimating = true;
369+
365370
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
366371
bringChildToFront(mRingView);
367372
bringChildToFront(button);
368373
} else {
369-
button.setCompatElevation(elevation + 2);
374+
button.setCompatElevation(elevation + 1);
370375
ViewCompat.setZ(mRingView, elevation + 1);
376+
377+
for (View b : mButtons) {
378+
if (b != button) {
379+
((FloatingActionButton) b).setCompatElevation(0);
380+
}
381+
}
371382
}
383+
372384
mRingView.setScaleX(1f);
373385
mRingView.setScaleY(1f);
374386
mRingView.setVisibility(View.VISIBLE);
375387
}
376388
@Override
377-
public void onAnimationEnd(Animator animation) {
378-
button.setCompatElevation(elevation);
379-
ViewCompat.setZ(mRingView, elevation);
380-
}
381-
});
382-
383-
final AnimatorSet result = new AnimatorSet();
384-
result.play(firstSet).before(lastSet);
385-
result.addListener(new AnimatorListenerAdapter() {
386-
@Override
387-
public void onAnimationStart(Animator animation) {
388-
mIsAnimating = true;
389-
}
390-
@Override
391389
public void onAnimationEnd(Animator animation) {
392390
mIsAnimating = false;
391+
392+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
393+
for (View b : mButtons) {
394+
((FloatingActionButton) b).setCompatElevation(elevation);
395+
}
396+
397+
ViewCompat.setZ(mRingView, elevation);
398+
}
393399
}
394400
});
395401

0 commit comments

Comments
 (0)