예제 #1
0
        protected override void SetUIParams(AnimationSubtype subtype)
        {
            var uiParams = UIParams.Default;

            switch (subtype)
            {
            case AnimationSubtype.FromBottom:
                uiParams.TranslationY = (float)ScreenSize.Height;
                break;

            case AnimationSubtype.FromTop:
                uiParams.TranslationY = -(float)ScreenSize.Height;
                break;

            case AnimationSubtype.Default:
            case AnimationSubtype.FromLeft:
                uiParams.TranslationX = -(float)ScreenSize.Width;
                break;

            case AnimationSubtype.FromRight:
                uiParams.TranslationX = (float)ScreenSize.Width;
                break;
            }
            StartUIForAppearingPageWhenPush = EndUIForDisappearingPageWhenPop = uiParams;
            StartUIForAppearingPageWhenPop  = EndUIForDisappearingPageWhenPush = UIParams.InvertTranslation(uiParams);
        }
        protected override void SetUIParams(AnimationSubtype subType)
        {
            var uiParams = DefaultUIParams;

            uiParams.Alpha = Alpha;

            switch (subType)
            {
            case AnimationSubtype.FromBottom:
                uiParams.TranslationY = (float)_offset.Y;
                break;

            case AnimationSubtype.FromTop:
                uiParams.TranslationY = -(float)_offset.Y;
                break;

            case AnimationSubtype.Default:
            case AnimationSubtype.FromLeft:
                uiParams.TranslationX = -(float)_offset.X;
                break;

            case AnimationSubtype.FromRight:
                uiParams.TranslationX = (float)_offset.X;
                break;
            }
            StartUIForAppearingPageWhenPush = EndUIForDisappearingPageWhenPop = uiParams;
        }
예제 #3
0
        protected override void SetUIParams(AnimationSubtype subType)
        {
            var firstUIParams  = new UIParams(ScreenSize, AlphaParam);
            var secondUIParams = new UIParams(ScreenSize, AlphaParam);

            switch (subType)
            {
            case AnimationSubtype.Default:
            case AnimationSubtype.FromLeft:
                firstUIParams.RotationY  = -Angle;
                secondUIParams.RotationY = Angle;
                break;

            case AnimationSubtype.FromRight:
                firstUIParams.RotationY  = Angle;
                secondUIParams.RotationY = -Angle;
                break;

            case AnimationSubtype.FromTop:
                firstUIParams.RotationX  = Angle;
                secondUIParams.RotationX = -Angle;
                break;

            case AnimationSubtype.FromBottom:
                firstUIParams.RotationX  = -Angle;
                secondUIParams.RotationX = Angle;
                break;
            }
            StartUIForAppearingPageWhenPush  = EndUIForDisappearingPageWhenPop = firstUIParams;
            EndUIForDisappearingPageWhenPush = StartUIForAppearingPageWhenPop = secondUIParams;
        }
 private void OnButtonClicked(AnimationSubtype animationSubType)
 {
     _animation.Duration     = Duration;
     _animation.BounceEffect = _bounceEffect;
     _animation.Subtype      = animationSubType;
     _navigation.PushAsync(new SamplePage {
         Title = animationSubType.ToString(), PageAnimation = _animation
     });
 }
예제 #5
0
    // Sets the animation type and subtype that will be used whenever showing or hiding a view controller
    public static void setAnimationTypeAndSubtype( AnimationType type, AnimationSubtype subtype )
    {
        if( Application.platform != RuntimePlatform.OSXEditor )
        {
            // convert the types to strings and lowercase the first letter
            string aType = type.ToString();
            aType = aType.Substring( 0, 1 ).ToLower() + aType.Substring( 1 );
            string aSubtype = subtype.ToString();
            aSubtype = aSubtype.Substring( 0, 1 ).ToLower() + aSubtype.Substring( 1 );

            _nativeToolkitSetAnimationTypeAndSubtype( aType, aSubtype );
        }
    }
예제 #6
0
        private static Foundation.NSString GetCATransitionSubtype(AnimationSubtype subType, bool isPop)
        {
            switch (subType)
            {
            case AnimationSubtype.FromTop:
                return(isPop ? CAAnimation.TransitionFromTop : CAAnimation.TransitionFromBottom);

            case AnimationSubtype.FromBottom:
                return(isPop ? CAAnimation.TransitionFromBottom : CAAnimation.TransitionFromTop);

            case AnimationSubtype.FromLeft:
                return(isPop ? CAAnimation.TransitionFromRight : CAAnimation.TransitionFromLeft);

            default:
                return(isPop ? CAAnimation.TransitionFromLeft : CAAnimation.TransitionFromRight);
            }
        }
예제 #7
0
        protected override void SetUIParams(AnimationSubtype subType)
        {
            var uiParams = DefaultUIParams;

            switch (subType)
            {
            case AnimationSubtype.Default:
                uiParams.RotationZ          = _angle;
                uiParams.ScaleX             = uiParams.ScaleY = 0.01f;
                uiParams.PivotPointLocation = PivotPointLocation.Center;
                break;

            case AnimationSubtype.FromBottom:
                uiParams.RotationZ          = AngleSign() * _angle / 2;
                uiParams.ScaleX             = uiParams.ScaleY = 1;
                uiParams.PivotPointLocation = _pivotPointLocation == PivotPointLocation.None ? PivotPointLocation.BottomRight : _pivotPointLocation;
                break;

            case AnimationSubtype.FromTop:
                uiParams.RotationZ          = AngleSign() * -_angle / 2;
                uiParams.ScaleX             = uiParams.ScaleY = 1;
                uiParams.PivotPointLocation = _pivotPointLocation == PivotPointLocation.None ? PivotPointLocation.TopLeft : _pivotPointLocation;
                break;

            case AnimationSubtype.FromLeft:
                uiParams.RotationZ          = -_angle / 2;
                uiParams.ScaleX             = uiParams.ScaleY = 1;
                uiParams.PivotPointLocation = _pivotPointLocation == PivotPointLocation.None ? PivotPointLocation.BottomLeft : _pivotPointLocation;
                break;

            case AnimationSubtype.FromRight:
                uiParams.RotationZ          = _angle / 2;
                uiParams.ScaleX             = uiParams.ScaleY = 1;
                uiParams.PivotPointLocation = _pivotPointLocation == PivotPointLocation.None ? PivotPointLocation.TopRight : _pivotPointLocation;
                break;
            }
            StartUIForAppearingPageWhenPush = EndUIForDisappearingPageWhenPop = uiParams;
            StartUIForDisappearingPageWhenPop.PivotPointLocation = uiParams.PivotPointLocation;
        }
예제 #8
0
 protected virtual void SetUIParams(AnimationSubtype subType)
 {
 }