阻止iPad键盘过度滚动网页

阻止iPad键盘过度滚动网页,ipad,scroll,multitouch-keyboard,Ipad,Scroll,Multitouch Keyboard,看起来Safari键盘在iPad上是这样工作的 如果网页最初到达屏幕底部,当键盘出现时,它不会滚动超过网页底部 如果网页最初未到达屏幕底部,且具有焦点的文本字段位于屏幕的一半以上,则会滚动网页,使当前文本字段位于屏幕的一半以下,而不关心是否显示原始网页下方的区域 基本上,我希望有一个网页,不垂直填充屏幕,但我不希望键盘使屏幕滚动过去的网页底部,因为这将隐藏网页的顶部,而不是显示网页下面的空白区域。 在iPad的纵向模式下,即使文本字段处于活动状态且键盘显示,以下网页也始终显示: 但是,当您

看起来Safari键盘在iPad上是这样工作的

  • 如果网页最初到达屏幕底部,当键盘出现时,它不会滚动超过网页底部

  • 如果网页最初未到达屏幕底部,且具有焦点的文本字段位于屏幕的一半以上,则会滚动网页,使当前文本字段位于屏幕的一半以下,而不关心是否显示原始网页下方的区域

基本上,我希望有一个网页,不垂直填充屏幕,但我不希望键盘使屏幕滚动过去的网页底部,因为这将隐藏网页的顶部,而不是显示网页下面的空白区域。 在iPad的纵向模式下,即使文本字段处于活动状态且键盘显示,以下网页也始终显示:

但是,当您以横向模式查看该网页并选择底部文本字段时,该网页会滚动,以便底部文本字段位于屏幕的中间位置。我希望它在屏幕的底部

在横向模式下,上一个链接将填充整个屏幕,因此如果您单击底部文本字段(滚动后),当键盘可见时,文本字段将显示在屏幕底部,而不是在屏幕滚动时,直到文本字段位于屏幕的一半

在纵向模式下,上一个链接最初不会填充屏幕,因此如果单击底部文本字段(显示键盘),它会向上滚动,使其位于屏幕的一半

对于纵向模式,最后一个链接也会填满整个屏幕,当选择底部文本字段时,当键盘变为可见时,它不会滚动到网页底部


当网页没有填满屏幕时,它可能会记住底部的空白,然后在键盘可见时向上滚动(隐藏顶部)。我想让它忘记键盘出现时底部的空白。

我面临着一个非常类似的问题。我就是这么做的

我订阅UIKeyboardWillShowNotification以获取键盘大小,然后当滚动视图向上滚动超过键盘高度时,我将滚动偏移设置为键盘高度