Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Esse específico da plataforma Android é usado para desativar os Disappearing eventos de página e Appearing na pausa e retomada do aplicativo, respectivamente, para aplicativos que usam AppCompat. Além disso, inclui a capacidade de controlar se o teclado virtual é exibido na retomada, se foi exibido em pausa, desde que o modo de operação do teclado virtual esteja definido como WindowSoftInputModeAdjust.Resize.
Observação
Observe que esses eventos são ativados por padrão para preservar o comportamento existente para aplicativos que dependem dos eventos. Desabilitar esses eventos faz com que o ciclo de eventos AppCompat corresponda ao ciclo de eventos pré-AppCompat.
Esse específico da plataforma pode ser consumido em XAML definindo as Application.SendDisappearingEventOnPausepropriedades , Application.SendAppearingEventOnResumee Application.ShouldPreserveKeyboardOnResume attached como boolean values:
<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>
Como alternativa, ele pode ser consumido do C# usando a API fluente:
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);
O Application.Current.On<Android> método especifica que esse específico da plataforma só será executado no Android. O Application.SendDisappearingEventOnPause método, no Xamarin.Forms.PlatformConfiguration.AndroidSpecific.AppCompat namespace, é usado para habilitar ou desabilitar o acionamento do evento de Disappearing página, quando o aplicativo entra em segundo plano. O Application.SendAppearingEventOnResume método é usado para habilitar ou desabilitar o acionamento do Appearing evento de página, quando o aplicativo é retomado em segundo plano. O Application.ShouldPreserveKeyboardOnResume método usado para controlar se o teclado virtual é exibido na retomada, se foi exibido em pausa, desde que o modo de operação do teclado virtual esteja definido como WindowSoftInputModeAdjust.Resize.
O resultado é que os Disappearing eventos de página e Appearing não serão disparados na pausa e retomada do aplicativo, respectivamente, e que, se o teclado virtual tiver sido exibido quando o aplicativo foi pausado, ele também será exibido quando o aplicativo for retomado:
