コード例 #1
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            //HasOptionsMenu = true;
            Xamarin.Essentials.Platform.Init(this, savedInstanceState);
            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.activity_main);
            Button botonAnimado = FindViewById <Button>(Resource.Id.botonanimado);

            botonAnimado.SetWidth(300);
            ObjectAnimator objectAnimator = ObjectAnimator.OfInt(botonAnimado, "width", 400, 250, 400);

            objectAnimator.SetDuration(3000);
            objectAnimator.SetInterpolator(new LinearInterpolator());
            objectAnimator.RepeatCount = 100;
            //objectAnimator.Start();

            ObjectAnimator objectAnimator1 = ObjectAnimator.OfInt(botonAnimado, "height", 220, 70, 220);

            objectAnimator1.SetDuration(3000);
            objectAnimator1.SetInterpolator(new LinearInterpolator());
            objectAnimator1.RepeatCount = 100;

            ObjectAnimator objectAnimator2 = ObjectAnimator.OfFloat(botonAnimado, "rotationY", 0, 360);

            objectAnimator2.SetDuration(10000);
            objectAnimator2.SetInterpolator(new LinearInterpolator());
            objectAnimator2.RepeatCount = 100;

            objectAnimator2.Update += (sender, e) => {
                if ((float)e.Animation.AnimatedValue >= 90 && (float)e.Animation.AnimatedValue <= 270)
                {
                    botonAnimado.Text = "";
                }
                else
                {
                    botonAnimado.Text = "Boton animado";
                }
            };

            AnimatorSet ans = new Android.Animation.AnimatorSet();

            ans.PlayTogether(objectAnimator, objectAnimator1, objectAnimator2);//,);
            ans.Start();
            //Animator animator = AnimatorInflater.LoadAnimator(this, Resource.Animator.property);
            //animator.SetTarget(botonAnimado);
            //animator.Start();
        }
コード例 #2
0
		void Initialize ()
		{
			ScaleX = ScaleY = 1;
			var baseDuration = 1000;
			animation = new AnimatorSet ();
			var rotation = ObjectAnimator.OfFloat (this, "rotation", 0, 60);
			rotation.SetDuration (baseDuration);
			rotation.RepeatCount = ValueAnimator.Infinite;
			var scale = ObjectAnimator.OfPropertyValuesHolder (
				this,
				PropertyValuesHolder.OfFloat ("scaleX", 1, .9f),
				PropertyValuesHolder.OfFloat ("scaleY", 1, .9f)
			);
			scale.RepeatMode = ValueAnimatorRepeatMode.Reverse;
			scale.SetDuration (baseDuration / 2);
			scale.RepeatCount = ValueAnimator.Infinite;
			animation.PlayTogether (rotation, scale);
			animation.Start ();
		}
コード例 #3
0
    /**
     * Performs the undo animation and restores the original state for given {@link android.view.View}.
     *
     * @param view the parent {@code View} which contains both primary and undo {@code View}s.
     */
    public void undo( View view) {
        int position = AdapterViewUtil.getPositionForView(getListViewWrapper(), view);
        mUndoPositions.Remove(position);

        View primaryView = mCallback.getPrimaryView(view);
        View undoView = mCallback.getUndoView(view);

        primaryView.Visibility=ViewStates.Visible;

        ObjectAnimator undoAlphaAnimator = ObjectAnimator.OfFloat(undoView, ALPHA, 1f, 0f);
        ObjectAnimator primaryAlphaAnimator = ObjectAnimator.OfFloat(primaryView, ALPHA, 0f, 1f);
        ObjectAnimator primaryXAnimator = ObjectAnimator.OfFloat(primaryView, TRANSLATION_X, primaryView.Width, 0f);

        AnimatorSet animatorSet = new AnimatorSet();
        animatorSet.PlayTogether(undoAlphaAnimator, primaryAlphaAnimator, primaryXAnimator);
        animatorSet.AddListener(new UndoAnimatorListener(undoView,this));
        animatorSet.Start();

        mCallback.onUndo(view, position);
    }
コード例 #4
0
ファイル: UIView.cs プロジェクト: Gerhic/Need2Park
		public void AnimateXAndWidth (Frame newFrame, Action completed)
		{
			ObjectAnimator xAnim = ObjectAnimator.OfFloat (this, LEFT_MARGIN, (float)Frame.X, (float)newFrame.X);
			ObjectAnimator wAnim = ObjectAnimator.OfInt (this, NEW_WIDTH, Frame.W, newFrame.W);

			AnimatorSet set = new AnimatorSet ();
			set.SetDuration (FRAMEANIMATIONTIME);
			set.PlayTogether (new ObjectAnimator[] { xAnim, wAnim });

			set.Start ();

			set.AnimationEnd += delegate {
				completed ();
			};
		}
コード例 #5
0
ファイル: BarChart.cs プロジェクト: eatskolnikov/mobile
        public void Reset (SummaryReportView data)
        {
            // Cancel old animation
            if (currentAnimation != null) {
                currentAnimation.Cancel ();
                currentAnimation = null;
            }

            // Not zooming
            isZooming = false;

            var totalRows = 0;
            var hasTime = false;

            if (data == null) {
                backgroundView.XAxisLabels = null;
                ResetRows (totalRows);
            } else {
                var showEveryYLabel = 1;
                var showValueLabels = true;

                backgroundView.XAxisLabels = data.ChartTimeLabels.ToArray ();

                totalRows = Math.Min (data.Activity.Count, data.ChartRowLabels.Count);
                ResetRows (totalRows);

                if (totalRows > 25) {
                    showEveryYLabel = 3;
                    showValueLabels = false;
                }

                for (var i = 0; i < totalRows; i++) {
                    var activity = data.Activity [i];
                    var yLabel = data.ChartRowLabels [i];

                    if (activity.TotalTime > 0) {
                        hasTime = true;
                    }

                    var barWidth = (float)activity.TotalTime / (float) (data.MaxTotal * 3600);
                    var showYAxis = i % showEveryYLabel == 0;

                    // Bind the data to row
                    var row = rows [i];
                    row.RelativeWidth = barWidth;
                    row.BarView.BillableTime = activity.BillableTime;
                    row.BarView.TotalTime = activity.TotalTime;
                    row.ValueTextView.Text = activity.FormattedTotalTime;
                    row.ValueTextView.Visibility = showValueLabels ? ViewStates.Visible : ViewStates.Gone;
                    row.YAxisTextView.Text = yLabel;
                    row.YAxisTextView.Visibility = showYAxis ? ViewStates.Visible : ViewStates.Gone;
                }
            }

            // Detect state
            var isLoading = totalRows == 0 || (data != null && data.IsLoading);
            var isEmpty = !isLoading && !hasTime;

            if (isLoading) {
                // Loading state
                loadingOverlayView.Visibility = ViewStates.Visible;
                loadingOverlayView.Alpha = 1f;

                emptyOverlayView.Visibility = ViewStates.Gone;
            } else if (isEmpty) {
                // Error state
                loadingOverlayView.Visibility = ViewStates.Visible;
                loadingOverlayView.Alpha = 1f;

                emptyOverlayView.Visibility = ViewStates.Visible;
                emptyOverlayView.Alpha = 0f;

                // Animate overlay in
                var scene = new AnimatorSet ();

                var fadeIn = ObjectAnimator.OfFloat (emptyOverlayView, "alpha", 0f, 1f).SetDuration (500);
                var fadeOut = ObjectAnimator.OfFloat (loadingOverlayView, "alpha", 1f, 0f).SetDuration (500);
                fadeOut.AnimationEnd += delegate {
                    loadingOverlayView.Visibility = ViewStates.Gone;
                };

                scene.Play (fadeOut);
                scene.Play (fadeIn).After (3 * fadeOut.Duration / 4);

                currentAnimation = scene;
                scene.Start();
            } else {
                // Normal state
                var scene = new AnimatorSet ();

                // Fade loading message out
                var fadeOverlayOut = ObjectAnimator.OfFloat (loadingOverlayView, "alpha", 1f, 0f).SetDuration (500);
                fadeOverlayOut.AnimationEnd += delegate {
                    loadingOverlayView.Visibility = ViewStates.Gone;
                };

                scene.Play (fadeOverlayOut);

                foreach (var row in rows) {
                    var axisFadeIn = ObjectAnimator.OfFloat (row.YAxisTextView, "alpha", 0f, 1f).SetDuration (500);
                    var barScaleUp = ObjectAnimator.OfFloat (row.BarView, "scaleX", 0f, 1f).SetDuration (750);
                    var valueFadeIn = ObjectAnimator.OfFloat (row.ValueTextView, "alpha", 0f, 1f).SetDuration (400);

                    scene.Play (axisFadeIn);
                    scene.Play (barScaleUp).After (axisFadeIn.Duration / 2);
                    scene.Play (valueFadeIn).After (barScaleUp);
                }

                currentAnimation = scene;
                scene.Start();
            }

            RequestLayout ();
        }
コード例 #6
0
ファイル: CategoryBadge.cs プロジェクト: Andrea/FriendTab
        public void SetCount(int count, bool animate)
        {
            if (!animate) {
                Count = count;
                return;
            }

            ValueAnimator outAnimator = null;

            if (this.count != 0) {
                outAnimator = ValueAnimator.OfInt (255, 0);
                outAnimator.SetDuration (250);
                outAnimator.Update += (sender, e) => { currentBubbleTransparency = (int)e.Animation.AnimatedValue; Invalidate (); };
                outAnimator.AnimationEnd += (sender, e) => { this.count = count; outAnimator.RemoveAllListeners (); };
            } else {
                this.count = count;
            }

            var inAnimator = ValueAnimator.OfInt (0, 255);
            inAnimator.SetDuration (700);
            inAnimator.Update += (sender, e) => { currentBubbleTransparency = (int)e.Animation.AnimatedValue; Invalidate (); };
            inAnimator.AnimationEnd += (sender, e) => inAnimator.RemoveAllListeners ();

            if (outAnimator != null) {
                var set = new AnimatorSet ();
                set.PlaySequentially (outAnimator, inAnimator);
                set.Start ();
            } else {
                inAnimator.Start ();
            }
        }
コード例 #7
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate (bundle);

            // Set our view from the "main" layout resource
            SetContentView (Resource.Layout.Main);

            mBlurringView = FindViewById<BlurringView> (Resource.Id.blurring_view);
            View blurredView = FindViewById(Resource.Id.blurred_view);

            mBlurringView.SetBlurredView (blurredView);

            mImageViews [0] = FindViewById<ImageView> (Resource.Id.image0);
            mImageViews [1] = FindViewById<ImageView> (Resource.Id.image1);
            mImageViews [2] = FindViewById<ImageView> (Resource.Id.image2);
            mImageViews [3] = FindViewById<ImageView> (Resource.Id.image3);
            mImageViews [4] = FindViewById<ImageView> (Resource.Id.image4);
            mImageViews [5] = FindViewById<ImageView> (Resource.Id.image5);
            mImageViews [6] = FindViewById<ImageView> (Resource.Id.image6);
            mImageViews [7] = FindViewById<ImageView> (Resource.Id.image7);
            mImageViews [8] = FindViewById<ImageView> (Resource.Id.image8);

            // Get our button from the layout resource,
            // and attach an event to it

            Button shuffleButton = FindViewById<Button> (Resource.Id.shuffle_button);
            Button shiftButton = FindViewById<Button> (Resource.Id.shift_button);

            shiftButton.Click += (sender, e) => {
                if (!mShifted) {
                    foreach (ImageView imageView in mImageViews) {
                        ObjectAnimator tx = ObjectAnimator.OfFloat (imageView, "translationX", (float)((mRandom.NextDouble () - 0.5f) * 500));
                        tx.Update += (s, ea) => mBlurringView.Invalidate();
                        ObjectAnimator ty = ObjectAnimator.OfFloat (imageView, "translationY", (float)((mRandom.NextDouble () - 0.5f) * 500));
                        tx.Update += (s, ea) => mBlurringView.Invalidate();
                        AnimatorSet set = new AnimatorSet();
                        set.PlayTogether(tx, ty);
                        set.SetDuration(3000);
                        set.SetInterpolator(new OvershootInterpolator());
                        set.AnimationStart += (s, ea) => imageView.SetLayerType(LayerType.Hardware, null);
                        set.AnimationEnd += (s, ea) => imageView.SetLayerType(LayerType.None, null);
                        set.AnimationCancel += (s, ea) => imageView.SetLayerType (LayerType.None, null);
                        set.Start();
                    }
                    mShifted = true;
                } else {
                    foreach (ImageView imageView in mImageViews) {
                        ObjectAnimator tx = ObjectAnimator.OfFloat (imageView, "translationX", 0);
                        tx.Update += (s, ea) => mBlurringView.Invalidate();
                        ObjectAnimator ty = ObjectAnimator.OfFloat (imageView, "translationY", 0);
                        tx.Update += (s, ea) => mBlurringView.Invalidate();
                        AnimatorSet set = new AnimatorSet();
                        set.PlayTogether(tx, ty);
                        set.SetDuration(3000);
                        set.SetInterpolator(new OvershootInterpolator());
                        //					set.AddListener(new AnimationEndListener(imageView));
                        set.AnimationStart += (s, ea) => imageView.SetLayerType(LayerType.Hardware, null);
                        set.AnimationEnd += (s, ea) => imageView.SetLayerType(LayerType.None, null);
                        set.AnimationCancel += (s, ea) => imageView.SetLayerType (LayerType.None, null);
                        set.Start();
                    }
                    mShifted = false;
                }
            };

            shuffleButton.Click += (sender, e) => {
                int newStartIndex;

                do {
                    newStartIndex = mImageIds[mRandom.Next(mImageIds.Length)];
                } while (newStartIndex == mStartIndex);
                mStartIndex = newStartIndex;

                for (int i = 0; i < mImageViews.Length; i++) {
                    int drawableId = mImageIds[(mStartIndex +i) % mImageIds.Length];
                    mImageViews[i].SetImageDrawable(ApplicationContext.Resources.GetDrawable(drawableId));
                }

                mBlurringView.Invalidate();
            };
        }
 private void PlayAnimatorsTogether(Animator[] animations)
 {
     var animatorSet = new AnimatorSet();
     animatorSet.PlayTogether(animations);
     animatorSet.Start();
 }
コード例 #9
0
ファイル: StartStopFab.cs プロジェクト: VDBBjorn/toggl_mobile
        private void Switch (Drawable src, ColorStateList tint, bool withAnimation = false)
        {

            if (!withAnimation) {
                SetImageDrawable (src);
                BackgroundTintList = tint;
                return;
            }

            const int ScaleDuration = 200;
            const int InitialDelay = 100;

            if (switchAnimation != null) {
                switchAnimation.Cancel ();
                switchAnimation = null;
            }

            var currentSrc = Drawable;

            // Scaling down animation
            var circleAnimOutX = ObjectAnimator.OfFloat (this, "scaleX", 1, 0.1f);
            var circleAnimOutY = ObjectAnimator.OfFloat (this, "scaleY", 1, 0.1f);
            circleAnimOutX.SetDuration (ScaleDuration);
            circleAnimOutY.SetDuration (ScaleDuration);

            // Alpha out of the icon
            //var iconAnimOut = ObjectAnimator.OfInt (currentSrc, "alpha", 255, 0);
            //iconAnimOut.SetDuration (AlphaDuration);

            var outSet = new AnimatorSet ();
            outSet.PlayTogether (circleAnimOutX, circleAnimOutY);
            outSet.SetInterpolator (AnimationUtils.LoadInterpolator (Context,
                                    Android.Resource.Animation.AccelerateInterpolator));
            outSet.StartDelay = InitialDelay;
            outSet.AnimationEnd += (sender, e) => {
                BackgroundTintList = tint;
                SetImageDrawable (src);
                JumpDrawablesToCurrentState ();
                ((Animator)sender).RemoveAllListeners ();
            };

            // Scaling up animation
            var circleAnimInX = ObjectAnimator.OfFloat (this, "scaleX", 0.1f, 1);
            var circleAnimInY = ObjectAnimator.OfFloat (this, "scaleY", 0.1f, 1);
            circleAnimInX.SetDuration (ScaleDuration);
            circleAnimInY.SetDuration (ScaleDuration);

            var inSet = new AnimatorSet ();
            inSet.PlayTogether (circleAnimInX, circleAnimInY);
            inSet.SetInterpolator (AnimationUtils.LoadInterpolator (Context,
                                   Android.Resource.Animation.DecelerateInterpolator));

            switchAnimation = new AnimatorSet ();
            switchAnimation.PlaySequentially (outSet, inSet);
            switchAnimation.Start ();
        }
コード例 #10
0
ファイル: PieChart.cs プロジェクト: eatskolnikov/mobile
        public void Reset (SummaryReportView data)
        {
            this.data = data;

            // Cancel old animation
            if (currentRevealAnimation != null) {
                currentRevealAnimation.Cancel ();
                currentRevealAnimation = null;
            }
            if (currentSelectAnimation != null) {
                currentSelectAnimation.Cancel ();
                currentSelectAnimation = null;
            }

            var totalSlices = data == null || data.CollapsedProjects == null ? 0 : data.CollapsedProjects.Count;

            SetActiveSlice (-1, updateStats: false);
            backgroundView.Visibility = ViewStates.Visible;
            backgroundView.Radius = defaultRadius;

            ResetSlices (totalSlices);
            if (totalSlices > 0) {
                var totalTime = data.CollapsedProjects.Sum (x => x.TotalTime);
                var startAngle = 0f;

                for (var i = 0; i < totalSlices; i++) {
                    var slice = slices [i];
                    var project = data.CollapsedProjects [i];
                    var percentOfAll = (float)project.TotalTime / totalTime;

                    slice.Visibility = ViewStates.Gone;
                    slice.Radius = defaultRadius;
                    if (project.Color == ProjectModel.GroupedProjectColorIndex) {
                        slice.Color = Color.ParseColor (ProjectModel.GroupedProjectColor);
                    } else {
                        slice.Color = Color.ParseColor (ProjectModel.HexColors [project.Color % ProjectModel.HexColors.Length]);
                    }
                    slice.StartAngle = startAngle;
                    startAngle += percentOfAll * 360;
                }
            }

            // Detect state
            var isLoading = data == null || data.IsLoading;
            var isEmpty = !isLoading && totalSlices == 0;

            if (isLoading) {
                // Loading state
                loadingOverlayView.Visibility = ViewStates.Visible;
                loadingOverlayView.Alpha = 1f;

                emptyOverlayView.Visibility = ViewStates.Gone;
                statsOverlayView.Visibility = ViewStates.Gone;
            } else if (isEmpty) {
                // Error state
                loadingOverlayView.Visibility = ViewStates.Visible;
                loadingOverlayView.Alpha = 1f;

                emptyOverlayView.Visibility = ViewStates.Visible;
                emptyOverlayView.Alpha = 0f;

                statsOverlayView.Visibility = ViewStates.Gone;

                // Animate overlay in
                var scene = new AnimatorSet ();

                var fadeIn = ObjectAnimator.OfFloat (emptyOverlayView, "alpha", 0f, 1f).SetDuration (500);
                var fadeOut = ObjectAnimator.OfFloat (loadingOverlayView, "alpha", 1f, 0f).SetDuration (500);
                fadeOut.AnimationEnd += delegate {
                    loadingOverlayView.Visibility = ViewStates.Gone;
                };

                scene.Play (fadeOut);
                scene.Play (fadeIn).After (3 * fadeOut.Duration / 4);

                currentRevealAnimation = scene;
                scene.Start();
            } else {
                // Normal state
                var scene = new AnimatorSet ();

                // Fade loading message out
                statsOverlayView.Visibility = ViewStates.Visible;
                statsOverlayView.Alpha = 0f;

                var fadeOverlayOut = ObjectAnimator.OfFloat (loadingOverlayView, "alpha", 1f, 0f).SetDuration (500);
                fadeOverlayOut.AnimationEnd += delegate {
                    loadingOverlayView.Visibility = ViewStates.Gone;
                };
                scene.Play (fadeOverlayOut);

                var fadeOverlayIn = ObjectAnimator.OfFloat (statsOverlayView, "alpha", 0f, 1f).SetDuration (500);
                scene.Play (fadeOverlayIn).After (3 * fadeOverlayOut.Duration / 4);

                var donutReveal = ValueAnimator.OfFloat (0, 360);
                donutReveal.SetDuration (750);
                donutReveal.Update += (sender, e) => ShowSlices ((float)e.Animation.AnimatedValue);
                scene.Play (donutReveal).After (fadeOverlayOut.Duration / 2);

                currentRevealAnimation = scene;
                scene.Start();
            }

            UpdateStats ();
            RequestLayout ();
        }
コード例 #11
0
		private void PlayAnimation()
		{
			var animator = ObjectAnimator.OfFloat (this, "animationSeek", 0.0f, 1.0f);
			var animatorSet = new AnimatorSet ();
			animatorSet.SetDuration (AnimationDuration);
			animatorSet.SetInterpolator (new DecelerateInterpolator ());
			animatorSet.SetTarget (this);
            animatorSet.Play(animator);
			animatorSet.Start();
		}
コード例 #12
0
ファイル: FadeImageView.cs プロジェクト: GSerjo/Seminars
		void DoAnimation2 (bool really, Action changePic)
		{
			if (!really)
				changePic ();
			else {
				var fdIn = ObjectAnimator.OfFloat (this, "alpha", new float[] { 0, 1 });
				var fdOut = ObjectAnimator.OfFloat (this, "alpha", new float[] { 1, 0 });
				fdOut.AnimationEnd += (sender, e) => changePic ();

				var animator = new AnimatorSet ();
				animator.SetInterpolator (new LinearInterpolator ());
				//animator.PlaySequentially (fdOut, fdIn);
				animator.Play (fdOut);
				animator.Play (fdIn).After (fdOut).After (2000);
				animator.Start ();
			}
		}
コード例 #13
0
        public void UpThrow()
        {
            ObjectAnimator objectAnimator = ObjectAnimator.OfFloat(shapeLoadingView, "translationY", mDistance, 0);
            ObjectAnimator scaleIndication = ObjectAnimator.OfFloat(indicationIm, "scaleX", 0.2f, 1);

            ObjectAnimator objectAnimator1 = null;
            switch(shapeLoadingView.GetShape())
            {
                case ShapeLoadingView.Shape.RECT:
                    {
                        objectAnimator1 = ObjectAnimator.OfFloat(shapeLoadingView, "rotation", 0, -120);
                    }
                    break;
                case ShapeLoadingView.Shape.CIRCLE:
                    {
                        objectAnimator1 = ObjectAnimator.OfFloat(shapeLoadingView, "rotation", 0, 180);
                    }
                    break;
                case ShapeLoadingView.Shape.TRIANGLE:
                    {
                        objectAnimator1 = ObjectAnimator.OfFloat(shapeLoadingView, "rotation", 0, 180);
                    }
                    break;
            }
            objectAnimator.SetDuration(ANIMATION_DURATION);
            objectAnimator1.SetDuration(ANIMATION_DURATION);
            objectAnimator.SetInterpolator(new DecelerateInterpolator());
            objectAnimator1.SetInterpolator(new DecelerateInterpolator());
            AnimatorSet animatorSet = new AnimatorSet();
            animatorSet.SetDuration(ANIMATION_DURATION);
            animatorSet.PlayTogether(objectAnimator, objectAnimator1, scaleIndication);
            animatorSet.AnimationEnd += (e, s) =>
            {
                FreeFall();
            };
            animatorSet.Start();
        }
コード例 #14
0
        public void FreeFall()
        {
            ObjectAnimator objectAnimator = ObjectAnimator.OfFloat(shapeLoadingView, "translationY", 0, mDistance);
            ObjectAnimator scaleIndication = ObjectAnimator.OfFloat(indicationIm, "scaleX", 1, 0.2f);

            objectAnimator.SetDuration(ANIMATION_DURATION);
            objectAnimator.SetInterpolator(new AccelerateInterpolator());
            AnimatorSet animatorSet = new AnimatorSet();
            animatorSet.SetDuration(ANIMATION_DURATION);
            animatorSet.PlayTogether(objectAnimator, scaleIndication);
            animatorSet.AnimationEnd += (e, s) =>
            {
                shapeLoadingView.ChangeShape();
                UpThrow();
            };
            animatorSet.Start();
        }
コード例 #15
0
        /**
         * Animates the pending {@link android.view.View} back to its original position.
         */
        private void restoreCurrentViewTranslation()
        {
            if (mCurrentView == null)
            {
                return;
            }

            ObjectAnimator xAnimator = ObjectAnimator.OfFloat(mSwipingView, TRANSLATION_X, 0);
            ObjectAnimator alphaAnimator = ObjectAnimator.OfFloat(mSwipingView, ALPHA, 1);

            AnimatorSet animatorSet = new AnimatorSet();
            animatorSet.PlayTogether(xAnimator, alphaAnimator);
            animatorSet.SetDuration(mAnimationTime);
            animatorSet.AddListener(new RestoreAnimatorListener(mCurrentView, mCurrentPosition,this));
            animatorSet.Start();
        }
コード例 #16
0
        /**
         * Flings given {@link android.view.View} out of sight.
         *
         * @param view         the parent {@link android.view.View}.
         * @param position     the position of the item in the {@link android.widget.ListAdapter} corresponding to the {@code View}.
         * @param flingToRight {@code true} if the {@code View} should be flinged to the right, {@code false} if it should be flinged to the left.
         */
        private void flingView(View view, int position, bool flingToRight)
        {
            if (mViewWidth < 2)
            {
                mViewWidth = mListViewWrapper.getListView().Width;
            }

            View swipeView = getSwipeView(view);
            ObjectAnimator xAnimator = ObjectAnimator.OfFloat(swipeView, TRANSLATION_X, flingToRight ? mViewWidth : -mViewWidth);
            ObjectAnimator alphaAnimator = ObjectAnimator.OfFloat(swipeView, ALPHA, 0);

            AnimatorSet animatorSet = new AnimatorSet();
            animatorSet.PlayTogether(xAnimator, alphaAnimator);
            animatorSet.SetDuration(mAnimationTime);
            animatorSet.AddListener(new FlingAnimatorListener(view, position,this));
            animatorSet.Start();
        }
コード例 #17
0
ファイル: LoadingFragment.cs プロジェクト: phaufe/Similardio
        public override void OnViewCreated(View view, Bundle savedInstanceState)
        {
            base.OnViewCreated (view, savedInstanceState);

            var interpolator = new Android.Views.Animations.AccelerateDecelerateInterpolator ();

            var xDelta = 12.ToPixels ();
            var yDelta = 8.ToPixels ();

            var transX = ObjectAnimator.OfFloat (logoImage, "translationX", -xDelta, xDelta);
            var transY = ObjectAnimator.OfFloat (logoImage, "translationY", -yDelta, 0, -yDelta);
            var rot = ObjectAnimator.OfFloat (logoImage, "rotation", -1.2f, 1.2f);

            // Ad infinitam
            transX.RepeatCount = transY.RepeatCount = rot.RepeatCount = -1;
            transX.RepeatMode = transY.RepeatMode = rot.RepeatMode = ValueAnimatorRepeatMode.Reverse;

            logoAnimation = new AnimatorSet ();
            logoAnimation.PlayTogether (transX, transY, rot);
            logoAnimation.SetDuration (800);
            logoAnimation.SetInterpolator (interpolator);
            logoAnimation.Start ();
        }
コード例 #18
0
ファイル: MainActivity.cs プロジェクト: takigava/Glass
		public void shift(View view) {
			if (!mShifted) {
				foreach (ImageView imageView in mImageViews) {
					ObjectAnimator tx = ObjectAnimator.OfFloat(imageView, View.X, (mRandom.NextFloat() - 0.5f) * 500);
					tx.AddUpdateListener(new AnimListener(mBlurringView));
					ObjectAnimator ty = ObjectAnimator.OfFloat(imageView, View.Y, (mRandom.NextFloat() - 0.5f) * 500);
					ty.AddUpdateListener(new AnimListener(mBlurringView));
					AnimatorSet set = new AnimatorSet();
					set.PlayTogether(tx, ty);
					set.SetDuration(3000);
					set.SetInterpolator(new OvershootInterpolator());
					set.AddListener(new AnimationEndListener(imageView));
					set.Start();
				};
				mShifted = true;
			} else {
				foreach (ImageView imageView in mImageViews) {
					ObjectAnimator tx = ObjectAnimator.OfFloat(imageView, View.X, 0);
					tx.AddUpdateListener(new AnimListener(mBlurringView));
					ObjectAnimator ty = ObjectAnimator.OfFloat(imageView, View.Y, 0);
					ty.AddUpdateListener(new AnimListener(mBlurringView));
					AnimatorSet set = new AnimatorSet();
					set.PlayTogether(tx, ty);
					set.SetDuration(3000);
					set.SetInterpolator(new OvershootInterpolator());
					set.AddListener(new AnimationEndListener(imageView));
					set.Start();
				};
				mShifted = false;
			}
		}
コード例 #19
0
 public void SpotAnimateAllPositionsOfANote(Note note)
 {
     List<ObjectAnimator> animationsList = new List<ObjectAnimator>();
     foreach (Position position in note.Positions)
     {
         //Create a new visual representation of that note.
         NoteRepresentation noteRep = new NoteRepresentation(_activity, note);
         //Set name on note.
         noteRep.SetText(note.Name);
         //Create the note's animation, and add that animation to the animations array.
         animationsList.Add(noteRep.CreateNoteAnimation_FadeOnly(position));
     }
     AnimatorSet animatorSet = new AnimatorSet();
     animatorSet.PlayTogether(animationsList.ToArray());
     animatorSet.Start();
 }
コード例 #20
0
        /// <summary>
        /// Playes a series of animations.
        /// </summary>
        /// <param name="animations">The series of animations to be played.</param>
        protected void PlayAnimations(ObjectAnimator[] animations)
        {
            AnimatorSet animatorSet = new AnimatorSet();
            animatorSet.PlaySequentially(animations);
            animatorSet.Start();

            //animatorSet.AnimationEnd
            //animatorSet.Pause
        }
コード例 #21
0
ファイル: SplashActivity.cs プロジェクト: EckyZero/Hashtagg
        private async void OnRequestOnboardingPage(OnboardingViewModel oVm)
        {
            _viewModel = oVm;
            AnimationInitUI();
            BindEvents();
            
            var mainAnimatorSet = new AnimatorSet();

            var appNameLayoutFinalTopSpace = TypedValue.ApplyDimension(ComplexUnitType.Dip, 55.0f, Application.Context.Resources.DisplayMetrics);

            var decelerateInterpolator = new DecelerateInterpolator(1.0f);

            var appNameLayoutAnimator = new ValueAnimator();
            appNameLayoutAnimator.SetDuration(750);
            appNameLayoutAnimator.SetInterpolator(decelerateInterpolator);
            appNameLayoutAnimator.SetFloatValues(_appNameLayout.GetY(), appNameLayoutFinalTopSpace);
            appNameLayoutAnimator.Update += (o, args) => { _appNameLayout.SetY((float)args.Animation.AnimatedValue); };

            var whatAccountsAnimator = new ValueAnimator();
            whatAccountsAnimator.SetDuration(750);
            whatAccountsAnimator.SetInterpolator(decelerateInterpolator);
            whatAccountsAnimator.SetFloatValues(0.0f, 1.0f);
            whatAccountsAnimator.Update += (o, args) => { _whatAccounts.Alpha = (float)args.Animation.AnimatedValue; };

            var appNameAnimationSet = new AnimatorSet();
            appNameAnimationSet.PlayTogether(appNameLayoutAnimator, whatAccountsAnimator);


            var socialButtonsAnimatorSet = new AnimatorSet();

            var overshootInterpolator = new OvershootInterpolator(3f);

            var facebookButtonAnimator = new ValueAnimator();
            facebookButtonAnimator.SetDuration(500);
            facebookButtonAnimator.SetInterpolator(overshootInterpolator);
            facebookButtonAnimator.SetFloatValues(_facebookButton.GetY() + _facebookButton.Height, _facebookButton.GetY());
            facebookButtonAnimator.Update += (o, args) =>
                {
                    _facebookButton.SetY((float)args.Animation.AnimatedValue);
                    _facebookButton.Alpha = args.Animation.AnimatedFraction;
                };

            var twitterButtonAnimator = new ValueAnimator();
            twitterButtonAnimator.SetDuration(500);
            twitterButtonAnimator.SetInterpolator(overshootInterpolator);
            twitterButtonAnimator.SetFloatValues(_facebookButton.GetY() + _facebookButton.Height, _facebookButton.GetY());
            twitterButtonAnimator.Update += (o, args) =>
                {
                    _twitterButton.SetY((float)args.Animation.AnimatedValue);
                    _twitterButton.Alpha = args.Animation.AnimatedFraction;
                };
            socialButtonsAnimatorSet.PlaySequentially(facebookButtonAnimator, twitterButtonAnimator);
            socialButtonsAnimatorSet.StartDelay = 500;

            var letsGoButtonAnimator = new ValueAnimator();
            letsGoButtonAnimator.SetDuration(500);
            letsGoButtonAnimator.SetInterpolator(decelerateInterpolator);
            letsGoButtonAnimator.SetFloatValues(0.0f, 1.0f);
            letsGoButtonAnimator.Update += (sender, args) =>
                {
                    _goButton.Alpha = (float)args.Animation.AnimatedValue;
                };

            mainAnimatorSet.PlaySequentially(appNameAnimationSet, socialButtonsAnimatorSet, letsGoButtonAnimator);

            await _viewModel.DidLoad();

            await Task.Delay(2000);

            mainAnimatorSet.Start();
            await _viewModel.DidAppear();
        }
コード例 #22
0
ファイル: PieChart.cs プロジェクト: eatskolnikov/mobile
        private void SetActiveSlice (int value, bool animate = false, bool updateStats = true)
        {
            if (slices.Count == 1 || value >= slices.Count) {
                value = -1;
            }

            if (value == activeSlice) {
                return;
            }

            activeSlice = value;
            Clickable = activeSlice >= 0;

            if (updateStats) {
                UpdateStats ();
            }

            if (animate) {
                // Finish currently running animations
                if (currentSelectAnimation != null) {
                    currentSelectAnimation.Cancel ();
                }

                // Animate changes
                var scene = new AnimatorSet ();
                for (var i = 0; i < slices.Count; i++) {
                    var slice = slices [i];

                    if (i == activeSlice) {
                        // Slice activating animations
                        if (slice.Alpha < 1) {
                            var fadeIn = ObjectAnimator.OfFloat (slice, "alpha", slice.Alpha, 1).SetDuration (500);
                            scene.Play (fadeIn);
                        }
                        if (slice.ScaleX != ActiveSliceScale) {
                            var scaleXUp = ObjectAnimator.OfFloat (slice, "scaleX", slice.ScaleX, ActiveSliceScale).SetDuration (500);
                            scene.Play (scaleXUp);
                        }
                        if (slice.ScaleY != ActiveSliceScale) {
                            var scaleYUp = ObjectAnimator.OfFloat (slice, "scaleY", slice.ScaleY, ActiveSliceScale).SetDuration (500);
                            scene.Play (scaleYUp);
                        }
                    } else if (activeSlice >= 0) {
                        // Slice deactivating animations
                        if (slice.Alpha > 0.5f) {
                            var fadeOut = ObjectAnimator.OfFloat (slice, "alpha", slice.Alpha, 0.5f).SetDuration (300);
                            scene.Play (fadeOut);
                        }
                        if (slice.ScaleX != NonActiveSliceScale) {
                            var scaleXDown = ObjectAnimator.OfFloat (slice, "scaleX", slice.ScaleX, NonActiveSliceScale).SetDuration (300);
                            scene.Play (scaleXDown);
                        }
                        if (slice.ScaleY != NonActiveSliceScale) {
                            var scaleYDown = ObjectAnimator.OfFloat (slice, "scaleY", slice.ScaleY, NonActiveSliceScale).SetDuration (300);
                            scene.Play (scaleYDown);
                        }
                    } else {
                        // No slice selected animations
                        if (slice.Alpha < 1) {
                            var fadeIn = ObjectAnimator.OfFloat (slice, "alpha", slice.Alpha, 1).SetDuration (300);
                            scene.Play (fadeIn);
                        }
                        if (slice.ScaleX != 1) {
                            var scaleXDown = ObjectAnimator.OfFloat (slice, "scaleX", slice.ScaleX, 1f).SetDuration (300);
                            scene.Play (scaleXDown);
                        }
                        if (slice.ScaleY != 1) {
                            var scaleYDown = ObjectAnimator.OfFloat (slice, "scaleY", slice.ScaleY, 1f).SetDuration (300);
                            scene.Play (scaleYDown);
                        }
                    }
                }

                currentSelectAnimation = scene;
                scene.Start ();
            }

            // Notify listeners
            if (ActiveSliceChanged != null) {
                ActiveSliceChanged (this, EventArgs.Empty);
            }
        }
コード例 #23
0
        /**
         * Animates given View.
         *
         * @param view the View that should be animated.
         */
        private void animateView(int position, View view, Animator[] animators)
        {
            if (mAnimationStartMillis == -1)
            {
                mAnimationStartMillis = SystemClock.UptimeMillis();
            }           
            //        ViewHelper.setAlpha(view, 0);

            view.Alpha = 0;
            
            AnimatorSet set = new AnimatorSet();
            set.PlayTogether(animators);
            set.StartDelay = calculateAnimationDelay(position);
            set.SetDuration(mAnimationDurationMillis);
            set.Start();

            mAnimators.Put(view.GetHashCode(), set);
        }