Main Thread Control Mises à jour sur iOS

Télécharger l’exemple Télécharger l’exemple

Cette plateforme iOS spécifique permet d’effectuer des mises à jour de disposition et de rendu de contrôle sur le thread main, au lieu d’être effectuées sur un thread d’arrière-plan. Il devrait être rarement nécessaire, mais dans certains cas, peut prévenir les incidents. Utilisé en XAML en définissant la Application.HandleControlUpdatesOnMainThread propriété pouvant être liée sur true:

<Application ...
             xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
             ios:Application.HandleControlUpdatesOnMainThread="true">
    ...
</Application>

Vous pouvez également la consommer à partir de C# à l’aide de l’API Fluent :

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...

Xamarin.Forms.Application.Current.On<iOS>().SetHandleControlUpdatesOnMainThread(true);

La Application.On<iOS> méthode spécifie que cette méthode spécifique à la plateforme s’exécutera uniquement sur iOS. La Application.SetHandleControlUpdatesOnMainThread méthode, dans l’espace Xamarin.Forms.PlatformConfiguration.iOSSpecific de noms, permet de contrôler si les mises à jour de disposition et de rendu du contrôle sont effectuées sur le thread main, au lieu d’être effectuées sur un thread d’arrière-plan. En outre, la Application.GetHandleControlUpdatesOnMainThread méthode peut être utilisée pour retourner si des mises à jour de disposition et de rendu de contrôle sont effectuées sur le thread main.