예제 #1
0
        private void SfPopUp_PopupOpened(object sender, EventArgs e)
        {
            try
            {
                if (clickCount == 0)
                {
                    anim             = new TranslateAnimation(sfPopUp.GetX(), sfPopUp.GetX(), sfPopUp.GetY(), sfPopUp.GetY() + 30);
                    anim.Duration    = 500; //You can manage the time of the blink with this parameter
                    anim.RepeatMode  = RepeatMode.Reverse;
                    anim.RepeatCount = int.MaxValue;
                    sfPopUp.PopupView.StartAnimation(anim);
                    sfPopUp.StaysOpen = true;
                }
                else if (clickCount == 1)
                {
                    sfPopUp.PopupView.ClearAnimation();
                    anim             = new TranslateAnimation(sfPopUp.PopupView.GetX(), sfPopUp.PopupView.GetX() + 100 * density, sfPopUp.PopupView.GetY(), sfPopUp.PopupView.GetY());
                    anim.Duration    = 2000; //You can manage the time of the blink with this parameter
                    anim.RepeatMode  = RepeatMode.Restart;
                    anim.RepeatCount = int.MaxValue;
                    sfPopUp.PopupView.StartAnimation(anim);
                }
                else if (clickCount == 2)
                {
                    sfPopUp.PopupView.ClearAnimation();
                    anim             = new AlphaAnimation(0.0f, 1.0f);
                    anim.Duration    = 250;
                    anim.RepeatCount = 1; //You can manage the time of the blink with this parameter
                    anim.RepeatMode  = RepeatMode.Restart;
                    sfPopUp.PopupView.StartAnimation(anim);
                    anim.AnimationEnd += async(s, ev) =>
                    {
                        await Task.Delay(1000);

                        sfPopUp.PopupView.StartAnimation(anim);
                    };
                }
                else if (clickCount == 3)
                {
                    sfPopUp.PopupView.ClearAnimation();
                    anim             = null;
                    anim             = new TranslateAnimation(0, 120 * density, sfPopUp.PopupView.GetY(), sfPopUp.PopupView.GetY());
                    anim.Duration    = 2000;
                    anim.RepeatCount = int.MaxValue; //You can manage the time of the blink with this parameter
                    anim.RepeatMode  = RepeatMode.Restart;
                    sfPopUp.PopupView.StartAnimation(anim);
                }
                else if (clickCount == 4)
                {
                    DrawArc test;
                    sfPopUp.PopupView.ClearAnimation();
                    anim = null;
                    var handSymbol = (sfPopUp.PopupView.ContentView as RelativeLayout).GetChildAt(1);
                    if (MainActivity.isTablet)
                    {
                        test = new DrawArc(2000, 1, -10, 1, 150, 1, -100);
                    }
                    else
                    {
                        test = new DrawArc(2000, 1, -50, 1, 350, 1, -300);
                    }
                    test.RepeatCount = int.MaxValue; //You can manage the time of the blink with this parameter
                    test.RepeatMode  = RepeatMode.Restart;
                    handSymbol.StartAnimation(test);
                }
            }
            catch
            {
            }
        }