Ios 以动态文本视图作为子视图的滚动视图

Ios 以动态文本视图作为子视图的滚动视图,ios,iphone,swift,uiscrollview,uitextview,Ios,Iphone,Swift,Uiscrollview,Uitextview,我想在scrollView中安装textView。当用户在textView中键入时,textView应在高度上展开。在textView达到scrollView的高度之前,一切似乎都正常工作。scrollView的contentSize未更新。这是我的设置 --scrollView |--contentView |--textView 约束设置如下: ScrollView-顶部、前导、尾随至superview和底部至底部布局指南 ContentView-顶部、前导、尾部、底部到su

我想在scrollView中安装textView。当用户在textView中键入时,textView应在高度上展开。在textView达到scrollView的高度之前,一切似乎都正常工作。scrollView的contentSize未更新。这是我的设置

--scrollView
  |--contentView
     |--textView
约束设置如下:

ScrollView-顶部、前导、尾随至superview和底部至底部布局指南

ContentView-顶部、前导、尾部、底部到superview(滚动视图)、将中心x和中心y对齐到superview(滚动视图)


TextView-顶部、前导、尾随到superview(ContentView),底部是autolayouts如何?我正在使用autolayouthow关于PureLayout?如果使用autolayout,则不需要通过编程设置滚动视图的内容大小。我理解。我尝试设置框架的唯一原因纯粹是因为scrollview的内容大小没有更新,因此我无法滚动我的视图。autolayouts如何?我正在使用autolayouthow about PureLayout?如果您使用autolayout,则无需通过编程设置scroll view的内容大小。我理解。我尝试设置框架的唯一原因纯粹是因为scrollview的内容大小没有更新,因此我无法滚动视图。
func textViewDidChange(_ textView: UITextView) {
     let size = CGSize(width: textView.frame.width, height: CGFloat(MAXFLOAT))
     let value = textView.sizeThatFits(size)
     let newHeight = value.height + textView.frame.minY
     if newHeight > scrollView.contentSize.height {
        contentView.frame = CGRect(x: 0, y: 0, width: textView.frame.width, height: newHeight)
        scrollView.contentSize = CGSize(width: textView.frame.width, height: value.height + textView.frame.minY)
    }
}