Novedades de control de subprocesos principales en iOS
Esta plataforma específica de iOS permite realizar actualizaciones de representación y diseño de controles en el subproceso principal, en lugar de realizarse en un subproceso en segundo plano. Rara vez es necesario, pero en algunos casos puede evitar bloqueos. Se consume en XAML estableciendo la Application.HandleControlUpdatesOnMainThread
propiedad true
enlazable en :
<Application ...
xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
ios:Application.HandleControlUpdatesOnMainThread="true">
...
</Application>
Como alternativa, se puede consumir desde C# mediante la API fluida:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...
Xamarin.Forms.Application.Current.On<iOS>().SetHandleControlUpdatesOnMainThread(true);
El Application.On<iOS>
método especifica que esta plataforma específica solo se ejecutará en iOS. El Application.SetHandleControlUpdatesOnMainThread
método , en el Xamarin.Forms.PlatformConfiguration.iOSSpecific
espacio de nombres , se usa para controlar si las actualizaciones de representación y diseño de controles se realizan en el subproceso principal, en lugar de realizarse en un subproceso en segundo plano. Además, el Application.GetHandleControlUpdatesOnMainThread
método se puede usar para devolver si se realizan actualizaciones de representación y diseño de controles en el subproceso principal.