我试图让我的 Xamarin.Forms 应用程序使用 Android 的沉浸式模式,因为我使用的是小屏幕设备,所以软键和导航栏正在窃取我宝贵的屏幕空间。
由于我使用的设备具有硬件键盘,我想隐藏软键盘。目前我通过安装“空输入法”键盘解决了这个问题。然而,键盘仍然存在,因此每次在 Entry 元素上请求焦点时,都会“显示”键盘。这会导致应用程序退出沉浸式模式。当我从我的表单应用程序中显示警报时也是如此。
理想情况下,我希望我的应用程序始终保持沉浸式模式,至少在请求关注 Entry 时(软键盘根本没有“显示”,或者当键盘“显示”时没有禁用沉浸式模式)。对于警报,我希望应用程序在隐藏警报时重新进入沉浸式模式。目前,我通过使用自定义 DisplayAlert 方法扩展 Page 类解决了这个问题,该方法在 DisplayAlert 任务完成后切换沉浸式模式。
我做了一些研究,发现了以下文章: 使用键盘时的沉浸式模式 显然用户设法解决了这个问题,所以可以有一个解决方案吗?
https://forums.xamarin.com/discussion/33034/prevent-entry-soft-keyboard-from-showing-on-android 但此解决方案不适用于 Entry 元素,我想避免为元素编写自定义渲染器.
有没有人以前遇到过类似的问题并设法解决了?