51 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package com.google.android.material.transition;
 | |
| 
 | |
| import android.animation.Animator;
 | |
| import android.animation.AnimatorListenerAdapter;
 | |
| import android.animation.ValueAnimator;
 | |
| import android.view.View;
 | |
| import android.view.ViewGroup;
 | |
| 
 | |
| /* loaded from: classes.dex */
 | |
| public final class FadeThroughProvider implements VisibilityAnimatorProvider {
 | |
|     static final float FADE_THROUGH_THRESHOLD = 0.35f;
 | |
|     private float progressThreshold = FADE_THROUGH_THRESHOLD;
 | |
| 
 | |
|     public float getProgressThreshold() {
 | |
|         return this.progressThreshold;
 | |
|     }
 | |
| 
 | |
|     public void setProgressThreshold(float f) {
 | |
|         this.progressThreshold = f;
 | |
|     }
 | |
| 
 | |
|     @Override // com.google.android.material.transition.VisibilityAnimatorProvider
 | |
|     public Animator createAppear(ViewGroup viewGroup, View view) {
 | |
|         float alpha = view.getAlpha() == 0.0f ? 1.0f : view.getAlpha();
 | |
|         return createFadeThroughAnimator(view, 0.0f, alpha, this.progressThreshold, 1.0f, alpha);
 | |
|     }
 | |
| 
 | |
|     @Override // com.google.android.material.transition.VisibilityAnimatorProvider
 | |
|     public Animator createDisappear(ViewGroup viewGroup, View view) {
 | |
|         float alpha = view.getAlpha() == 0.0f ? 1.0f : view.getAlpha();
 | |
|         return createFadeThroughAnimator(view, alpha, 0.0f, 0.0f, this.progressThreshold, alpha);
 | |
|     }
 | |
| 
 | |
|     private static Animator createFadeThroughAnimator(final View view, final float f, final float f2, final float f3, final float f4, final float f5) {
 | |
|         ValueAnimator ofFloat = ValueAnimator.ofFloat(0.0f, 1.0f);
 | |
|         ofFloat.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { // from class: com.google.android.material.transition.FadeThroughProvider.1
 | |
|             @Override // android.animation.ValueAnimator.AnimatorUpdateListener
 | |
|             public void onAnimationUpdate(ValueAnimator valueAnimator) {
 | |
|                 view.setAlpha(TransitionUtils.lerp(f, f2, f3, f4, ((Float) valueAnimator.getAnimatedValue()).floatValue()));
 | |
|             }
 | |
|         });
 | |
|         ofFloat.addListener(new AnimatorListenerAdapter() { // from class: com.google.android.material.transition.FadeThroughProvider.2
 | |
|             @Override // android.animation.AnimatorListenerAdapter, android.animation.Animator.AnimatorListener
 | |
|             public void onAnimationEnd(Animator animator) {
 | |
|                 view.setAlpha(f5);
 | |
|             }
 | |
|         });
 | |
|         return ofFloat;
 | |
|     }
 | |
| }
 |