Create interface for different transition types.

Bug: 187542491
Test: rebuild
Change-Id: Id80e2a7401498970e2c339a10f119ab3d0c314bf
This commit is contained in:
Yi-Ling Chuang
2021-05-21 12:35:05 +08:00
parent 75dc1f16e3
commit 59760461ac

View File

@@ -16,6 +16,7 @@
package com.android.settingslib.transition;
import androidx.annotation.IntDef;
import android.app.Activity;
import android.content.Context;
import android.util.Log;
@@ -29,11 +30,31 @@ import com.google.android.material.transition.platform.FadeThroughProvider;
import com.google.android.material.transition.platform.MaterialSharedAxis;
import com.google.android.material.transition.platform.SlideDistanceProvider;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
/**
* A helper class to apply Settings Transition
*/
public class SettingsTransitionHelper {
/**
* Flags indicating the type of the transition.
*/
@IntDef({
TransitionType.TRANSITION_NONE,
TransitionType.TRANSITION_SHARED_AXIS,
TransitionType.TRANSITION_SLIDE,
TransitionType.TRANSITION_FADE
})
@Retention(RetentionPolicy.SOURCE)
public @interface TransitionType {
int TRANSITION_NONE = -1;
int TRANSITION_SHARED_AXIS = 0;
int TRANSITION_SLIDE = 1;
int TRANSITION_FADE = 2;
}
private static final String TAG = "SettingsTransitionHelper";
private static final long DURATION = 450L;
private static final float FADE_THROUGH_THRESHOLD = 0.22F;