带有SubView的UIScrollView,包括ImageView,Label&表视图

时间:2016-05-17 03:44:40

标签: ios uitableview uiscrollview autolayout

我正在构建一个iOS应用程序,要求视图以下列格式显示。

UIView  
UIScrollView
UIView (Content View)
UIImageView (20% height of View)
UILabel embedded in UIView (20% height or greater depending on label content)
UITableView (60% or greater depending on table content)

上面的布局是使用故事板构建的。 see screenshot

我看到两个滚动条(一个用于UIScrollView,另一个用于UITableView)。 see screenshot

我尝试在UITableView中禁用滚动,希望UIScrollView会自动缩放,但它会截断一大块tableview内容。 see screenshot

是否可以使用单个滚动条显示Image,Label和TableView内容的内容?

2 个答案:

答案 0 :(得分:2)

您不应该使用scrollview作为基础,因为tableview拥有自己的scrollview。

您可以将所有这些内容直接放在UIView上。

如果您想在用户滚动时滚动图片并进行标注,则可以使用headerview tableview。您可以使用图片和标签配置headerview

因此,请使用全屏大小的tableView并将headerview设置为所需大小(对于imageview为20%,对于标签为20%)。

您可以将UIView拖放到tableview以设置标题视图。 tableview的视图层次结构应如下面的屏幕截图所示:

Check screen shot

此处查看上面的tableview单元格以及tabelview下方是您的标题视图。

希望这会有所帮助:)

答案 1 :(得分:0)

修改你的tableview高度约束会解决这个问题。如果滚动视图约束设置正确

[tableview reloadData];
[tableHeightConstraint setConstant:tableview.contentsize.height]; 
[tableview setScrollEnabled:NO];
[tableview setBounces:NO];

imageview和Tableview的高度约束就足够了,标签高度将自动计算