Android 上的软键盘输入模式
这一 .NET Multi-platform App UI (.NET MAUI) Android 平台特定功能用于设置软键盘输入区域的操作模式,可通过将 Application.WindowSoftInputModeAdjust
附加属性设置为 WindowSoftInputModeAdjust
枚举的值,在 XAML 中使用它:
<Application ...
xmlns:android="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific;assembly=Microsoft.Maui.Controls"
android:Application.WindowSoftInputModeAdjust="Resize">
...
</Application>
或者,可以使用 Fluent API 从 C# 使用它:
using Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific;
...
App.Current.On<Microsoft.Maui.Controls.PlatformConfiguration.Android>().UseWindowSoftInputModeAdjust(WindowSoftInputModeAdjust.Resize);
Application.On<Microsoft.Maui.Controls.PlatformConfiguration.Android>
方法指定这一平台特定功能仅可在 Android 上运行。 Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific
命名空间中的 Application.UseWindowSoftInputModeAdjust
方法用于设置软键盘输入区域操作模式,WindowSoftInputModeAdjust
枚举提供两个值:Pan
和 Resize
。 Pan
值使用 AdjustPan
调整选项,当输入控件具有焦点时,该选项不会调整窗口的大小。 而是会平移窗口的内容,以便当前焦点不会被软键盘遮盖。 Resize
值使用 AdjustResize
调整选项,当输入控件具有焦点时,该选项会调整窗口的大小,从而为软键盘腾出空间。
也可以在 Window 上设置此平台特定功能。 这样,你便可以在打开的每个 Window
上定义不同的软键盘输入区域操作模式:
Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific.Application.SetWindowSoftInputModeAdjust
(this.Window, WindowSoftInputModeAdjust.Resize);
结果是,当输入控件具有焦点时,可以设置软键盘输入区域操作模式: