Hauptupdates für Threadsteuerelemente unter iOS
Diese plattformspezifische iOS-Plattform ermöglicht die Ausführung von Steuerelementlayout- und Renderingupdates im Hauptthread, anstatt sie in einem Hintergrundthread auszuführen. Es sollte selten benötigt werden, aber in einigen Fällen können Abstürze verhindert werden. Der in XAML verbrauchte Code wird durch Festlegen der Application.HandleControlUpdatesOnMainThread
bindungsfähigen Eigenschaft auf true
:
<Application ...
xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
ios:Application.HandleControlUpdatesOnMainThread="true">
...
</Application>
Alternativ kann sie mit der Fluent-API von C# genutzt werden:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.iOSSpecific;
...
Xamarin.Forms.Application.Current.On<iOS>().SetHandleControlUpdatesOnMainThread(true);
Die Methode Application.On<iOS>
gibt an, dass diese plattformspezifische Funktion nur unter iOS ausführbar ist. Die Application.SetHandleControlUpdatesOnMainThread
Methode im Xamarin.Forms.PlatformConfiguration.iOSSpecific
Namespace wird verwendet, um zu steuern, ob Steuerelementlayout- und Renderingaktualisierungen im Hauptthread ausgeführt werden, anstatt für einen Hintergrundthread ausgeführt zu werden. Darüber hinaus kann die Application.GetHandleControlUpdatesOnMainThread
Methode verwendet werden, um zurückzugeben, ob Steuerelementlayout- und Renderingaktualisierungen im Hauptthread ausgeführt werden.