移动设备上的 Blazor/Blazor 混合输入问题 [复制]

Blazor / Blazor Hybrid Input Issue on Mobile Devices [duplicate]

提问人:UltimateX 提问时间:3/17/2023 最后编辑:UltimateX 更新时间:9/21/2023 访问量:443

问:

我已经尝试解决这个问题一个月了。我有一个 blazor web 应用程序和一个 blazor maui,当输入集中在移动设备上时,至少对于 android,键盘弹出,但它覆盖/隐藏输入导致用户体验非常差,因为用户无法看到他们正在输入的内容。我尽一切努力修复它,但我失败了。我试图添加底部填充左右,但我怎么知道设备虚拟键盘高度。如果你们有任何建议。 非常感谢很多建议

我尝试使用固定位置或添加填充,但没有任何效果

输入 移动 键盘 Blazer Maui

评论

0赞 Dimitris Maragkos 3/17/2023
在不知道您当前的代码和页面是什么样子的情况下,我们如何提供建议?
0赞 KargWare 3/17/2023
请提供足够的代码,以便其他人可以更好地理解或重现问题。

答:

1赞 Alexandar May - MSFT 3/20/2023 #1

问题是当元素聚焦在页面底部时,您无法访问该元素。input

要修复它,您可以尝试将附加属性设置为 。更多详情,可参考 https://learn.microsoft.com/en-us/dotnet/maui/android/platform-specifics/soft-keyboard-input-mode?view=net-maui-7.0Application.WindowSoftInputModeAdjustPan

<?xml version = "1.0" encoding = "UTF-8" ?> 
<Application xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:MauiApp" 
                
             xmlns:android="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific;assembly=Microsoft.Maui.Controls"
             android:Application.WindowSoftInputModeAdjust="Pan"

             x:Class="MauiApp.App">
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="Resources/Styles/Colors.xaml" />
                <ResourceDictionary Source="Resources/Styles/Styles.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>

与 相比,您可以尝试在页面底部添加一个与键盘高度相同的透明框。丑陋,但它有效。有关详细信息,请参阅 https://github.com/dotnet/maui/issues/13380Maui