1. 程式人生 > >xamarin.form Animation動畫

xamarin.form Animation動畫

動畫分為幾種:Translate(平移),Scale(放大縮小),Rotate(旋轉),Flip(沿著X軸或者Y軸翻轉),Fade(淡入淡出),Layout(重新指定長款距離)

只要是繼承自VirtualElement這些父類就可以使用這些控制元件

1。Translate使用control.TranslateTO(X目標的位置,Y目標的位置,動畫消耗時間 = null,動畫效果 = null);

2。Scale使用control.ScaleTo(放大倍數,動畫小號的時間 = null,動畫效果 = null)

3。Rotate使用control.RotateTo()(單一旋轉)或者control.RelRotateTo()(持續旋轉)

4。Flip翻轉使用control.RotateXTo()或者control.RotateYTo()

5。Fade淡入淡出使用control.FadeTo(透明度,時間)

6。Layout使用LayoutTo(new Rectangle(){X,Y,長,寬})

-----------------------------------------------複合動畫--------------------------------

Animation ani = new Animation();
            {
                Animation a1 = new Animation(d => { this.control.Scale = d; }, 0, 1, Easing.SinIn);
                ani.Add(0, 0.3, a1);
            }
            {
                Animation a1 = new Animation(d => { this.control.Scale = d; }, 0, 1);
                ani.Add(0, 1, a1);
            }
            {
                Animation a1 = new Animation(d => { this.control.Scale = d; }, 0, 1, Easing.SpringOut);
                ani.Add(1, 2, a1);
            }
            ani.Commit(this, "aniName",16,5000);//第三個頻率,第四個時間
            this.AbortAnimation("aniName");//可以終止動畫執行