Aracılığıyla paylaş


iOS'ta Ana İş Parçacığı Denetimi Güncelleştirmeleri

Bu iOS platformuna özgü, denetim düzeninin ve işleme güncelleştirmelerinin arka plan iş parçacığında gerçekleştirilmek yerine ana iş parçacığında gerçekleştirilmesini sağlar. Nadiren gerekli olmalıdır, ancak bazı durumlarda kilitlenmeleri önleyebilir. XAML'de bindable özelliğini trueolarak ayarlayarak Application.HandleControlUpdatesOnMainThread tüketilir:

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

Alternatif olarak, akıcı API kullanılarak C# dilinden de kullanılabilir:

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

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

Application.On<iOS> yöntemi, platforma özgü bu uygulamanın yalnızca iOS üzerinde çalışacağını belirtir. Application.SetHandleControlUpdatesOnMainThread yöntemi, ad alanında, denetim düzeninin Xamarin.Forms.PlatformConfiguration.iOSSpecific ve işleme güncelleştirmelerinin arka plan iş parçacığında yerine ana iş parçacığında gerçekleştirilip gerçekleştirilmeyeceğini denetlemek için kullanılır. Ayrıca, denetim düzeninin Application.GetHandleControlUpdatesOnMainThread ve işleme güncelleştirmelerinin ana iş parçacığında gerçekleştirilip gerçekleştirilmediğini döndürmek için yöntemi kullanılabilir.