ios - UITextView 使用自动布局动态扩展为 ScrollView 内的文本

标签 ios uiscrollview uitextview autolayout

我有一个 UIScrollView包括一些组件,其中一个组件是 UITextView ,我想要的是让 UITextView动态扩展 UIScrollView ,其实我用的是autoLayout ,所以这段代码不起作用:

    CGRect frame = self.detailTextView.frame;
    frame.size.height = self.detailTextView.contentSize.height;
    self.detailTextView.frame = frame;
    scroll.contentSize = CGSizeMake(scroll.contentSize.width,
                                    300 + self.detailTextView.frame.size.height);
    [self.detailTextView setFrame:frame];

我想要的是用 Storyboard元素帮助我做到这一点。

enter image description here

最佳答案

不要设置框架,而是将 TextView 的高度约束之一拖到 Controller 中以创建 socket 。然后在 viewWillLayoutSubviews 中抓取 contentSize 并设置 TextView 高度约束的常量。这应该完成您在上面的代码中对框架所做的事情。只需确保您的 TextView 从所有边缘到 ScrollView 都有约束,以便 ScrollView 可以正确调整自身大小。

关于ios - UITextView 使用自动布局动态扩展为 ScrollView 内的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17040418/

相关文章:

swift - 缩小时如何使 UIImageView 居中于 Scrollview?

ios - 在 Objective-C 中加载时将光标移动到预填充 Textview 的开头

ios - 无法点击 UITextview 电子邮件地址

ios - 带有动态库的 32 位应用程序在 64 位设备上崩溃

ios - 添加依赖于现有请求的新 AFHTTPRequestOperation

ios - UIScrollView inside UIScrollView – 在 TextView 范围内忽略 ScrollView 触摸?

cocoa-touch - iOS : bubble text?

ios - iOS 上的社交分享

java - 我可以将 Android 应用程序转换为 iPhone/iPad 应用程序吗?

ios - 将 ScrollView 添加到我的 viewController