Merge "Update wireless charging layout to match the new design." into sc-dev

This commit is contained in:
Shan Huang
2021-05-11 08:06:59 +00:00
committed by Android (Google) Code Review
3 changed files with 19 additions and 3 deletions

View File

@@ -1199,7 +1199,7 @@
0 0
</item> </item>
<!-- Ending text size in sp of batteryLevel for wireless charging animation --> <!-- Ending text size in sp of batteryLevel for wireless charging animation -->
<item name="wireless_charging_anim_battery_level_text_size_end" format="float" type="dimen">24 <item name="wireless_charging_anim_battery_level_text_size_end" format="float" type="dimen">48
</item> </item>
<!-- time until battery info is at full opacity--> <!-- time until battery info is at full opacity-->
<integer name="wireless_charging_anim_opacity_offset">80</integer> <integer name="wireless_charging_anim_opacity_offset">80</integer>

View File

@@ -34,7 +34,7 @@ import android.view.WindowManager;
*/ */
public class WirelessChargingAnimation { public class WirelessChargingAnimation {
public static final long DURATION = 1133; public static final long DURATION = 1500;
private static final String TAG = "WirelessChargingView"; private static final String TAG = "WirelessChargingView";
private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);

View File

@@ -20,6 +20,7 @@ import android.animation.AnimatorSet;
import android.animation.ObjectAnimator; import android.animation.ObjectAnimator;
import android.animation.ValueAnimator; import android.animation.ValueAnimator;
import android.content.Context; import android.content.Context;
import android.graphics.Color;
import android.graphics.PointF; import android.graphics.PointF;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.util.TypedValue; import android.util.TypedValue;
@@ -42,7 +43,9 @@ import java.text.NumberFormat;
*/ */
public class WirelessChargingLayout extends FrameLayout { public class WirelessChargingLayout extends FrameLayout {
public static final int UNKNOWN_BATTERY_LEVEL = -1; public static final int UNKNOWN_BATTERY_LEVEL = -1;
private static final long RIPPLE_ANIMATION_DURATION = 1133; private static final long RIPPLE_ANIMATION_DURATION = 1500;
private static final int SCRIM_COLOR = 0x4C000000;
private static final int SCRIM_FADE_DURATION = 300;
private ChargingRippleView mRippleView; private ChargingRippleView mRippleView;
public WirelessChargingLayout(Context context) { public WirelessChargingLayout(Context context) {
@@ -121,6 +124,19 @@ public class WirelessChargingLayout extends FrameLayout {
AnimatorSet animatorSet = new AnimatorSet(); AnimatorSet animatorSet = new AnimatorSet();
animatorSet.playTogether(textSizeAnimator, textOpacityAnimator, textFadeAnimator); animatorSet.playTogether(textSizeAnimator, textOpacityAnimator, textFadeAnimator);
ValueAnimator scrimFadeInAnimator = ObjectAnimator.ofArgb(this,
"backgroundColor", Color.TRANSPARENT, SCRIM_COLOR);
scrimFadeInAnimator.setDuration(SCRIM_FADE_DURATION);
scrimFadeInAnimator.setInterpolator(Interpolators.LINEAR);
ValueAnimator scrimFadeOutAnimator = ObjectAnimator.ofArgb(this,
"backgroundColor", SCRIM_COLOR, Color.TRANSPARENT);
scrimFadeOutAnimator.setDuration(SCRIM_FADE_DURATION);
scrimFadeOutAnimator.setInterpolator(Interpolators.LINEAR);
scrimFadeOutAnimator.setStartDelay(RIPPLE_ANIMATION_DURATION - SCRIM_FADE_DURATION);
AnimatorSet animatorSetScrim = new AnimatorSet();
animatorSetScrim.playTogether(scrimFadeInAnimator, scrimFadeOutAnimator);
animatorSetScrim.start();
mRippleView = findViewById(R.id.wireless_charging_ripple); mRippleView = findViewById(R.id.wireless_charging_ripple);
OnAttachStateChangeListener listener = new OnAttachStateChangeListener() { OnAttachStateChangeListener listener = new OnAttachStateChangeListener() {
@Override @Override