iOS:动态高度UIScrollview自动布局

iOS:动态高度UIScrollview自动布局,ios,dynamic,autolayout,scrollview,Ios,Dynamic,Autolayout,Scrollview,我正在制作一个类似Facebook的文章详细视图。 此视图具有contentprofile图像、写入者、日期、内容文本和注释写入视图。 所以俯视图是UIScrollview,俯视图是UIView UIScrollView具有UIImageview、UILabel*3、, UIView具有UIExtView、UIButton 在UIView中触摸UITextView时,键盘会弹出。 因此UIScrollview将更小,UIView位置将移动。 用户将写入文本,将添加UITextView行,以便扩展

我正在制作一个类似Facebook的文章详细视图。 此视图具有contentprofile图像、写入者、日期、内容文本和注释写入视图。 所以俯视图是UIScrollview,俯视图是UIView

UIScrollView具有UIImageview、UILabel*3、, UIView具有UIExtView、UIButton

在UIView中触摸UITextView时,键盘会弹出。 因此UIScrollview将更小,UIView位置将移动。 用户将写入文本,将添加UITextView行,以便扩展UIView大小

最终,UIScrollview和UIView高度不确定

如何设置此视图的自动布局?

可以尝试: 我下面说的是关于约束的: UIScrollView top,left,right等同于自身。视图top,left,right UIScrollView底部等于UIView底部 UIView left,right,bottom equal self.view left,right,bottom UIView height equal 200您可以设置它

好的,当触摸UITextView时,将UIView高度约束设置为您想要的可能为300


我认为它有效

我建议您只需添加一个scrollView,并按如下所示设置其约束,而不是将UIView用于textView和button

然后在scroll view中添加UIView作为容器视图,选择scroll view go to Editor,选择Embed In,然后选择view并设置其约束,如下所示

现在逐个添加imageView、标签、textView和按钮,并确保设置imageView的顶部空间以供查看,按钮位于屏幕底部空间以供查看,以及所有其他视图的顶部空间和底部空间以供最近的视图使用,这样滚动视图可以轻松确定所需的高度

最后一件事,当用户在textView中单击时,您可能需要向上移动scrollView,以便用户在键入时可以看到textView,要做到这一点,一个简单的解决方案就是从AddAll Class(添加所有类到项目)下载库“TPKeyboardAvoiding”(TPKeyboardAvoiding),将scrollView的自定义类设置为“TPKeyboardAvoidingScrollView”。清理并运行该项目,它应该会起作用