Xamarin.Forms 實驗旗標

實作新功能 Xamarin.Forms 時,有時會放在實驗旗標後面。 這可讓工程小組更快速地為您提供新功能,同時仍能夠變更功能 API,再移至穩定版本。 一旦功能移至穩定版本,就會移除實驗旗標。

Xamarin.Forms 包含下列實驗旗標:

  • Shell_UWP_Experimental

使用實驗旗標背後的功能,需要您在應用程式中啟用旗標或旗標。 啟用實驗旗標的方法有兩種:

  • 在您的平台項目中啟用實驗旗標。
  • 在您的類別中 App 啟用實驗旗標。

警告

取用實驗旗標後方的功能,而不啟用旗標,會導致您的應用程式擲回例外狀況,指出必須啟用哪個旗標。

在平台項目中啟用旗標

Xamarin.Forms.Forms.SetFlags方法可用來在您的平台項目中啟用實驗旗標:

Xamarin.Forms.Forms.SetFlags("Shell_UWP_Experimental");

方法 SetFlags 應該在 iOS 上的類別 AppDelegateMainActivity Android 上的 類別和 UWP 上的 類別中 App 叫用。

重要

在叫用 方法之前 Forms.Init ,必須先在您的平台項目中啟用實驗旗標。

Xamarin.Forms.Forms.SetFlags方法會接受string陣列自變數,這可讓您在單一方法呼叫中啟用多個實驗旗標:

Xamarin.Forms.Forms.SetFlags(new string[] { "Shell_UWP_Experimental", "AnotherFeature_Experimental" });

警告

永遠不要多次呼叫 SetFlags 方法,因為後續呼叫會覆寫先前呼叫的結果。

在您的 App 類別中啟用旗標

Device.SetFlags方法可用來在共享程式碼專案中的 App 類別中啟用實驗旗標:

Device.SetFlags(new string[]{ "Shell_UWP_Experimental" });

Device.SetFlags方法接受 自IReadOnlyList<string>變數,這可讓您在單一方法呼叫中啟用多個實驗旗標:

Device.SetFlags(new string[]{ "Shell_UWP_Experimental", "AnotherFeature_Experimental" });

警告

永遠不要多次呼叫 SetFlags 方法,因為後續呼叫會覆寫先前呼叫的結果。

舊的實驗旗標

下表列出現已正式運作之功能的實驗旗標,以及 Xamarin.Forms 移除實驗旗標的版本:

旗標 Xamarin.Forms 釋放
AppTheme_Experimental 4.8
Brush_Experimental 5.0
CarouselView_Experimental 5.0
CollectionView_Experimental 4.3
DragAndDrop_Experimental 5.0
FastRenderers_Experimental 4.0
IndicatorView_Experimental 4.7
Markup_Experimental 5.0 (已移至 Xamarin Community Toolkit)
MediaElement_Experimental 5.0 (已移至 Xamarin Community Toolkit)
RadioButton_Experimental 5.0
Shapes_Experimental 5.0
Shell_Experimental 4.0
StateTriggers_Experimental 4.7
SwipeView_Experimental 5.0
Visual_Experimental 3.6