我试图创建一个动态UIView,它包含一些固定的图形元素和一些动态文本。我无法找到适合我项目的教程或文档中的内容。下面是我的爆炸视图(我的视图与scrollView和主视图的高度在iphone 5视图中被强制为800,仅用于此问题的目的)
我想要实现什么?标题,图像,静态视图和静态视图2都是固定的,它们不会随内容而改变。标签1,标签2和textarea将随其内容大小增长。
我已经在这件事上工作了大约一天,我需要一些帮助,因为我无法获得任何结果。我试过这个解决方案:
使用此解决方案,我可以在NSLog()中看到返回正确值的textview约束
self.textViewHeightConstraint.constant = [textview sizeThatFits:CGSizeMake(textview.frame.size.width, CGFLOAT_MAX)].height;
但运行时的textarea框架保持不变。
我也试过这个教程:
它适用于只有滚动视图,内容视图和textview的项目。当我尝试在我的项目中使用该逻辑时,它不再起作用了。
我尝试了很多其他解决方案,所以我的问题是:我如何才能达到预期的效果?或者我的布局设置中可能存在一些可笑的错误?或者简单地说,是否有人可以指向我的教程,涵盖类似的视图组织?
答案 0 :(得分:1)
你应该避免在带有AutoLayout的UIScrollView
内部使用复杂的嵌套子视图,而应该将它们放在subView中。最好的开始:
1:在UIView
UIScrollView
内放置一个leading
,trailing
/ top
/ bottom
/ UIScrollView
约束设置为0 UIView
。
2:将所有子视图放在一个 UIView
内,
3:更改scrollView.contentSize
中任何子视图的文本/动态内容后,您只需计算UITableView
并根据一组复杂嵌套子视图所需的代码进行相应设置。
您更好的选择:
使用scrollView
,它具有return
方法,并且在没有所有意大利面条代码的情况下,它可以非常轻松地处理动态布局。