ios - scrollRectToVisible:CGRectMake无法正常工作

标签 ios iphone uiscrollview

我在UITextField中有5个UIScrollView,当我触摸第四个文本字段时,键盘出现,但它出现在文本字段上方(文本字段仍在键盘下方),我看不到我在键入什么。

我尝试使用-scrollRectToVisible:CGRectMake更改了contentSize的大小,并且工作正常。

但是这种行为是无法理解的。谁能告诉我此功能的实际工作原理?

最佳答案

试试看

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
    CGRect rc = [textField bounds];
    rc = [textField convertRect:rc toView:self.scrollView];
    CGPoint pt = rc.origin;
    pt.x = 0;
    if(rc.origin.y > 200) // here you can also change value 200 and 150 as per your requirement.
        pt.y -=  150;
    else
        pt.y -= rc.origin.y;
    [self.scrollView setContentOffset:pt animated:YES];

    return YES;
}

关于ios - scrollRectToVisible:CGRectMake无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21552341/

相关文章:

ios - 我收到以下错误 "appium &"command not found on MAC

ios - 如何在 iOS 中获取当前城市

ios - CocoaPods & GitHub - 获取当前文件

iphone - 如何在UITextview/UILabel中使用自定义表情?

iphone - SKStoreproductviewcontroller 在横向模式下被截断

ios - 是否有任何适用于 iOS 的自定义日期选择器,其中年份选择是可选的?

ios - 无法以编程方式将 View 添加到 Storyboard 中的现有 uiview

ios - 使用自动布局在 UIScrollView 中居中可变宽度的文本列

ios - 在缩略图中向下滚动时,图片共享 iOS 应用程序如何处理内存?

objective-c - Objective-C 中的异常/错误处理(iPhone 应用程序)