翻譯|使用教程|編輯:陳津勇|2019-10-15 16:53:31.227|閱讀 1280 次
概述:本文主要介紹了Essential Studio for Xamarin 2019 v3中新的Xamarin.Forms Effects視圖組件及其在各種情況下的使用方法。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
一個現代的移動應用程序都有極具吸引力的動畫。移動應用程序通常包括許多動畫類型,如波紋、旋轉和縮放,這些類型的動畫使應用程序具有很強的交互性。
Xamarin.Forms中可用于實現iOS和Android這類效果的選項很少。在安卓系統中,你可以使用RippleDrawable來增加漣漪效應,但在Xamarin.iOS系統中卻沒有。此外,作為單獨的特性使用時,這種效果更好。當您需要同時包含多個動畫(比如ripple和rotation)時,您需要在共享和特定于平臺的項目中進行大量調整。
點擊下載Essential Studio for Xamarin正式版
為了更有效地提供這些效果,Syncfusion在iOS和Android平臺2019 v3測試版為Xamarin引入了一個名為effects View的新組件(此控件作為Syncfusion.Xamarin.Core NuGet包的一部分提供)。它是一個容器控件,可以接受任何類型的視圖作為它的子視圖,提供了諸如突出背景、波紋、選擇、放大、縮小和旋轉等效果。該控件的一個優點就是,這些效果在不同的組合(例如高光和波紋、波紋和選擇、選擇和縮放、波紋和旋轉等)中也可以正常工作。
不同的效果
“效果視圖”中有不同類型的效果。本文將說明如何分別使用它們,然后介紹它們的一些可能組合。
突出
通過將效果模式設置為高光可以實現高光效果。完成后,此效果將自動消失。
<ContentPage xmlns:effectsView="clr-namespace:Syncfusion.XForms.EffectsView;assembly=Syncfusion.Core.XForms"> <effectsView:SfEffectsView TouchDownEffects="Highlight"> <Grid>....</Grid> </effectsView:SfEffectsView> </ContentPage>
波紋
通過將效果模式設置為Ripple可以實現波紋效果。與高光效果一樣,此效果也將在完成后自動淡出。
<font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><effectsView:SfEffectsView TouchDownEffects =“ Ripple”> </font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> <Grid> .... </ Grid></font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> </ effectsView:SfEffectsView></font></font><font></font>
旋轉
旋轉效果可以通過將效果模式設置為旋轉來實現。Effects視圖的內容將根據角度值進行旋轉。
<font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><effectsView:SfEffectsView TouchDownEffects =“旋轉” Angle =“ 180”> </font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> <Grid> .... </ Grid></font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"> </ effectsView:SfEffectsView></font></font><font></font>
縮放比例
縮放效果可以通過將效果模式設置為Scale來實現。Effects視圖的內容將根據ScaleFactor的值按比例縮小或按比例放大。即,如果小于1,就會有按比例縮小;如果大于1,就會有按比例放大。
<effectsView:SfEffectsView TouchDownEffects="Scale" ScaleFactor="0.8"> <font></font> <Grid>....</Grid><font></font> </effectsView:SfEffectsView><font></fo
選擇
通過將效果模式設置為選擇,可以移動到選擇狀態。
<effectsView:SfEffectsView TouchDownEffects="Selection"> <font></font> <Grid>....</Grid><font></font> </effectsView:SfEffectsView><font></font>nt>
您還可以將屬性IsSelected設置為true。
<effectsView:SfEffectsView IsSelected="true"> <font></font> <Grid>....</Grid><font></font> </effectsView:SfEffectsView><font></font>
使用這兩種方法都會觸發SelectionChanged事件,該事件可用于應用程序級別的自定義。
規模和選擇
正如前面所說,除了單獨使用這些效果外,您還可以組合使用它們。
組合一:設置規模和選擇的影響模式
<effectsView:SfEffectsView TouchDownEffects="Scale, Selection" ScaleFactor="0.8"> <font></font> <Grid>....</Grid><font></font> </effectsView:SfEffectsView><font></font> <font></font>
組合二:波紋和規模
另一個可能的組合是波動和規模。
<effectsView:SfEffectsView TouchDownEffects="Ripple, Scale"> <font></font> <Grid>....</Grid><font></font> </effectsView:SfEffectsView><font></font>
組合三:波紋和旋轉
您還可以使用波動和旋轉組合。
<effectsView:SfEffectsView TouchDownEffects="Ripple, Rotation"> <font></font> <Grid>....</Grid><font></font> </effectsView:SfEffectsView><font></font>
觸摸交互
在前面的代碼片段中,您可能已經注意到不同的效果被設置為屬性TouchDownEffects。顧名思義,這些效果將在與effects視圖控件的觸摸交互期間呈現。如果你需要這些效果在長按或觸摸互動,可以使用長按效果和觸摸效果的屬性。
有一個有趣地方是,您可以對不同的交互產生不同的影響。例如,您可以將高亮設置為降落,將波紋設置為長按。
<effectsView:SfEffectsView TouchDownEffects="Highlight" LongPressEffects="Ripple, Selection" > <font></font> <Grid>....</Grid><font></font> </effectsView:SfEffectsView><font></font>
通過API觸發效果
除了觸摸交互,還可以使用ApplyEffects方法觸發這些效果。此方法的所有參數都是可選的,可以根據需要使用。如果未傳遞任何參數,則將觸發紋波效果。它接受以下可選參數:
effects - 設置效果的類型。
rippleStartPosition - 交互期間,波動效應將始終從交互點開始。使用ApplyEffects方法時,可以從左側、右側、頂部或底部位置開始波動。默認為中心。
rippleStartPoint - 設置從其開始波動的確切x、y點。
repeat - 設置是否連續重復波動效果的值。
重復并淡出波紋
淡出的波紋是在移動應用程序中最常見的動畫之一。您可以通過在ApplyEffects方法中傳遞repeat并將FadeOutRipple屬性設置為true來實現此效果。
this.RotationEffectsView.ApplyEffects(repeat:true);
如果需要停止紋波效果,可以使用Reset()方法。
this.RotationEffectsView.Reset();
*想要獲得Essential Studio for Xamarin更多資源或正版授權的朋友,可以咨詢了解哦~
慧都網·1024程序員節,DevExpress、MyEclipse、Axure RP、Aspose、FastReport等產品限時放“價”,給你專屬寵愛!點擊下方圖片查看活動詳情↓↓↓
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: