gpt4 book ai didi

ios - 滚动 UIScrollView 以适应 iOS 中的键盘

转载 作者:行者123 更新时间:2023-11-28 22:15:16 25 4
gpt4 key购买 nike

我有一个 ScrollView ,其中包含一个 1500 pt 高的内容 View 。它滚动的屏幕是标准的 iPad 纵向屏幕 (1024)。

我有一些散布在 ScrollView 内容 View 中的文本字段。当我打开键盘时(通过点击文本字段),我已经将我的 ScrollView 的底部约束提高了 216 点以为键盘腾出空间。但是,如果我的 TextView 位于屏幕底部,它仍然会被键盘隐藏。

我想以编程方式滚动 ScrollView (我知道如何使用 [self.scrollview setContentOffset:CGMake...),但我不知道如何滚动它。我尝试使用 textField 的框架的 y 坐标来计算它,但我认为我只能检索相对于内容 View 高度的值……而不是它在屏幕上的实际位置(就像我在 iPad 外部测量它一样使用以点为单位的卷尺)。

为了计算将 View 滚动多远,我现在需要知道文本框在屏幕上的位置——这样我就可以确定它是否会被键盘覆盖并将滚动条移动足以看到它。

有什么办法可以找出 textField 在屏幕上的位置吗?

谢谢!

最佳答案

我使用此代码片段在我的 iPhone 应用程序中获得相同的结果。为 heightDiff

找到合适的值
float heightDiff = 150;

CGPoint yScrollPoint = [self.scrollView convertPoint:CGPointZero fromView:self.textfield];
CGPoint scrollPoint = CGPointMake(0.0, yScrollPoint.y - heightDiff);
[self.scrollView setContentOffset:scrollPoint animated:YES];

将此添加到您的 textFieldDidBeginEditing:textField

希望这会有所帮助。

关于ios - 滚动 UIScrollView 以适应 iOS 中的键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21872076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com