Partilhar via


Modo de entrada de teclado suave no Android

Esse específico da plataforma Android é usado para definir o modo de operação para uma área de entrada de teclado virtual e é consumido em XAML definindo a propriedade anexada Application.WindowSoftInputModeAdjust como um valor da WindowSoftInputModeAdjust enumeração:

<Application ...
             xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
             android:Application.WindowSoftInputModeAdjust="Resize">
  ...
</Application>

Como alternativa, ele pode ser consumido do C# usando a API fluente:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
...

App.Current.On<Android>().UseWindowSoftInputModeAdjust(WindowSoftInputModeAdjust.Resize);

O Application.On<Android> método especifica que essa plataforma específica só será executada no Android. O Application.UseWindowSoftInputModeAdjust método, no Xamarin.Forms.PlatformConfiguration.AndroidSpecific namespace, é usado para definir o modo de operação da área de entrada do teclado virtual, com a WindowSoftInputModeAdjust enumeração fornecendo dois valores: Pan e Resize. O Pan valor usa a AdjustPan opção de ajuste, que não redimensiona a janela quando um controle de entrada tem foco. Em vez disso, o conteúdo da janela é deslocado para que o foco atual não seja obscurecido pelo teclado virtual. O Resize valor usa a AdjustResize opção de ajuste, que redimensiona a janela quando um controle de entrada tem foco, para abrir espaço para o teclado virtual.

O resultado é que o modo de operação da área de entrada do teclado virtual pode ser definido quando um controle de entrada tem foco:

Modo de Operação do Teclado Suave Específico da Plataforma