xamarin.form Animation動畫
阿新 • • 發佈:2018-12-01
動畫分為幾種: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");//可以終止動畫執行