Xamarin.Forms flag sperimentali

Quando viene implementata una nuova Xamarin.Forms funzionalità, a volte viene messo dietro un flag sperimentale. Ciò consente al team di progettazione di fornire nuove funzionalità più rapidamente, pur essendo ancora in grado di modificare le API delle funzionalità prima di passare a una versione stabile. Il flag sperimentale viene quindi rimosso dopo che la funzionalità passa a una versione stabile.

Xamarin.Forms include i flag sperimentali seguenti:

  • Shell_UWP_Experimental

L'uso di funzionalità dietro un flag sperimentale richiede di abilitare il flag o i flag nell'applicazione. Esistono due approcci per abilitare i flag sperimentali:

  • Abilitare il flag sperimentale nei progetti di piattaforma.
  • Abilitare il flag sperimentale nella App classe.

Avviso

L'utilizzo di funzionalità dietro un flag sperimentale, senza abilitare il flag, genererà un'eccezione che indica quale flag deve essere abilitato.

Abilitare i flag nei progetti della piattaforma

Il Xamarin.Forms.Forms.SetFlags metodo può essere usato per abilitare un flag sperimentale nei progetti di piattaforma:

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

Il SetFlags metodo deve essere richiamato nella classe AppDelegate in iOS, nella classe MainActivity in Android e nella classe nella piattaforma App UWP.

Importante

L'abilitazione di un flag sperimentale nei progetti di piattaforma deve verificarsi prima che venga richiamato il Forms.Init metodo .

Il Xamarin.Forms.Forms.SetFlags metodo accetta un string argomento di matrice, che consente di abilitare più flag sperimentali in una singola chiamata al metodo:

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

Avviso

Non chiamare mai il SetFlags metodo più di una volta, perché le chiamate successive sovrascriveranno il risultato delle chiamate precedenti.

Abilitare i flag nella classe App

Il Device.SetFlags metodo può essere usato per abilitare un flag sperimentale nella App classe nel progetto di codice condiviso:

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

Il Device.SetFlags metodo accetta un IReadOnlyList<string> argomento, che consente di abilitare più flag sperimentali in una singola chiamata al metodo:

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

Avviso

Non chiamare mai il SetFlags metodo più di una volta, perché le chiamate successive sovrascriveranno il risultato delle chiamate precedenti.

Flag sperimentali precedenti

La tabella seguente elenca i flag sperimentali per le funzionalità attualmente disponibili a livello generale e la Xamarin.Forms versione in cui è stato rimosso il flag sperimentale:

Flag Xamarin.Forms Rilascio
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 (spostato in Xamarin Community Toolkit)
MediaElement_Experimental 5.0 (spostato in 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