带有子视图的 UIScrollView,包括 ImageView、Label 和 Table View
Posted
技术标签:
【中文标题】带有子视图的 UIScrollView,包括 ImageView、Label 和 Table View【英文标题】:UIScrollView with SubViews including ImageView, Label & Table View 【发布时间】:2016-05-17 03:44:40 【问题描述】:我正在构建一个需要以以下格式显示视图的 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)
上面的布局是使用故事板构建的。
我看到两个滚动条(一个用于 UIScrollView,另一个用于 UITableView)。
我尝试禁用 UITableView 中的滚动,希望 UIScrollView 会自动缩放,但它会截断一大块 tableview 内容。
是否可以有一个单独的滚动条可以显示 Image、Label 和 TableView 的内容?
【问题讨论】:
【参考方案1】:你不应该使用滚动视图作为基础,因为 tableview 有它自己的滚动视图。
您可以将所有这些内容直接放在UIView
上。
如果您想在用户滚动时向上滚动图像和标签,则可以使用 headerview
或 tableview
。您可以使用图像和标签配置headerview
。
因此,采用全屏尺寸的 tableView 并将 headerview 设置为所需的尺寸(在您的情况下,20% 用于 imageview,20% 用于标签)。
您可以将UIView
拖放到tableview来设置headerview。您的 tableview 视图层次结构应如下图所示:
这里的表格视图单元格上方和表格视图下方的视图是您的标题视图。
希望这会有所帮助:)
【讨论】:
不客气... :) 如果您觉得它有帮助,那么请为答案投票...:)【参考方案2】:修改您的 tableview 高度约束将解决这个问题。如果滚动视图约束设置正确
[tableview reloadData];
[tableHeightConstraint setConstant:tableview.contentsize.height];
[tableview setScrollEnabled:NO];
[tableview setBounces:NO];
imageview 和 Tableviews 的高度限制足够了,标签高度会自动计算
【讨论】:
以上是关于带有子视图的 UIScrollView,包括 ImageView、Label 和 Table View的主要内容,如果未能解决你的问题,请参考以下文章