我正在尝试安装并运行一个. NET Maui应用程序,到目前为止它运行得相当不错-但有一个主要问题:我无法修复Entry
/Editor
控件停留在键盘上方且不重叠的问题。
我知道有一个未解决的问题,它在积压工作中,但应用程序似乎无法使用,直到这个问题得到解决。
[GitHub] dotnet/毛伊岛第4792期,
[GitHub]. net/毛伊岛问题10662(#1)和
[GitHub]. net/毛伊岛问题10662(#2)
但是当我注册为一个处理程序时,我不能让它们工作。#1不做任何事情,#2在加载任何视图时崩溃。
StackOverflow上也有一个解决方案(Question 72536074)-不幸的是,这个方法忽略了键盘高度。
要重现此问题,最简单的代码示例是具有以下内容的任何ContentPage:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="EntryIssueMaui.MainPage">
<ScrollView>
<Entry VerticalOptions="End" BackgroundColor="LightCoral" />
</ScrollView>
</ContentPage>
基于默认的Maui模板应用程序。
这会导致在启用键盘时无法在ScrollView
中向上推Entry
(红色):
我怎样才能实现--我猜通常是默认的特性--在考虑键盘高度的同时,控件被推高到仍然可见(例如,有/没有自动完成或表情符号键盘)?
先谢了!
1条答案
按热度按时间tjrkku2a1#
为了解决这个问题,您可以通过
UIKeyboard.FrameEndUserInfoKey
获得键盘的框架,并计算需要更改的高度。希望对你有用。