Události životního cyklu stránky v Androidu
Tato platforma pro Android se používá k zakázání Disappearing
Appearing
událostí stránky v aplikaci pozastavit a obnovit pro aplikace, které používají AppCompat. Kromě toho zahrnuje možnost řídit, zda je soft klávesnice zobrazena v životopisu, pokud byla zobrazena při pozastavení, za předpokladu, že provozní režim softwarové klávesnice je nastaven na WindowSoftInputModeAdjust.Resize
.
Poznámka:
Všimněte si, že tyto události jsou ve výchozím nastavení povolené, aby se zachovalo stávající chování pro aplikace, které na tyto události spoléhají. Zakázáním těchto událostí se cyklus událostí AppCompat shoduje s cyklem událostí pre-AppCompat.
Tuto platformu lze v XAML využívat nastavením Application.SendDisappearingEventOnPause
Application.SendAppearingEventOnResume
Application.ShouldPreserveKeyboardOnResume
a připojenými vlastnostmi k boolean
hodnotám:
<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>
Alternativně ho můžete využívat z jazyka C# pomocí rozhraní FLUENT API:
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);
Metoda Application.Current.On<Android>
určuje, že tato konkrétní platforma se bude spouštět pouze v Androidu. Metoda Application.SendDisappearingEventOnPause
v Xamarin.Forms.PlatformConfiguration.AndroidSpecific.AppCompat
oboru názvů slouží k povolení nebo zakázání Disappearing
aktivaci události stránky při vstupu aplikace na pozadí. Metoda Application.SendAppearingEventOnResume
se používá k povolení nebo zakázání Appearing
aktivaci události stránky, když aplikace obnoví z pozadí. Metoda Application.ShouldPreserveKeyboardOnResume
se používá řízení, zda je soft klávesnice zobrazena v životopisu, pokud byla zobrazena při pozastavení, za předpokladu, že provozní režim softwarové klávesnice je nastaven na WindowSoftInputModeAdjust.Resize
.
Výsledkem je to, že Disappearing
události a Appearing
události stránky se neaktivují při pozastavení a obnovení aplikace a že pokud se po pozastavení aplikace zobrazila měkká klávesnice, zobrazí se také při obnovení aplikace: