Android'de Sayfa Yaşam Döngüsü Olayları
Bu Android platformuna Disappearing
özgü, AppCompat kullanan uygulamalar için sırasıyla uygulama duraklatma ve sürdürme işlemlerinde ve Appearing
sayfa olaylarını devre dışı bırakmak için kullanılır. Buna ek olarak, yumuşak klavyenin çalışma modunun olarak ayarlanması WindowSoftInputModeAdjust.Resize
koşuluyla, yumuşak klavyenin özgeçmişte görüntülenip görüntülenmeyeceğini, duraklatıldığında görüntülenip görüntülenmeyeceğini denetleme özelliği içerir.
Not
Bu olayların, olaylara dayanan uygulamalar için mevcut davranışı korumak üzere varsayılan olarak etkinleştirildiğini unutmayın. Bu olayların devre dışı bırakılması AppCompat olay döngüsünün AppCompat öncesi olay döngüsüyle eşleşmesini sağlar.
Bu platforma özgü XAML'de , Application.SendAppearingEventOnResume
ve Application.ShouldPreserveKeyboardOnResume
ekli özellikleri değerlere boolean
ayarlanarak Application.SendDisappearingEventOnPause
kullanılabilir:
<Application ...
xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core" xmlns:androidAppCompat="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific.AppCompat;assembly=Xamarin.Forms.Core"
android:Application.WindowSoftInputModeAdjust="Resize"
androidAppCompat:Application.SendDisappearingEventOnPause="false"
androidAppCompat:Application.SendAppearingEventOnResume="false"
androidAppCompat:Application.ShouldPreserveKeyboardOnResume="true">
...
</Application>
Alternatif olarak, akıcı API kullanılarak C# dilinden de kullanılabilir:
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific.AppCompat;
...
Xamarin.Forms.Application.Current.On<Android>()
.UseWindowSoftInputModeAdjust(WindowSoftInputModeAdjust.Resize)
.SendDisappearingEventOnPause(false)
.SendAppearingEventOnResume(false)
.ShouldPreserveKeyboardOnResume(true);
yöntemi, Application.Current.On<Android>
platforma özgü bu uygulamanın yalnızca Android'de çalışacağını belirtir. Application.SendDisappearingEventOnPause
ad alanındaki Xamarin.Forms.PlatformConfiguration.AndroidSpecific.AppCompat
yöntemi, uygulama arka plana girdiğinde sayfa olayını tetiklemeye Disappearing
olanak tanımak veya devre dışı bırakmak için kullanılır. Application.SendAppearingEventOnResume
yöntemi, uygulama arka plandan devam ettiğinde sayfa olayını tetiklemeye Appearing
olanak tanımak veya devre dışı bırakmak için kullanılır. Application.ShouldPreserveKeyboardOnResume
yöntemi, yumuşak klavyenin çalışma modunun olarak ayarlanması WindowSoftInputModeAdjust.Resize
koşuluyla, geçici klavyenin özgeçmişte görüntülenip görüntülenmeyeceğini, duraklatıldığında görüntülenip görüntülenmeyeceğini denetler.
Sonuç olarak Disappearing
ve Appearing
sayfa olayları sırasıyla uygulama duraklatılıp sürdürülürken tetiklenmez ve uygulama duraklatıldığında yumuşak klavye görüntülenirse, uygulama devam ettiğinde de görüntülenir: