如何同时使用 UIScrollView 和 UITableView 实现平滑滚动?

Posted

技术标签:

【中文标题】如何同时使用 UIScrollView 和 UITableView 实现平滑滚动?【英文标题】:How to implement smooth scrolling using both a UIScrollView and an UITableView? 【发布时间】:2012-05-17 15:37:27 【问题描述】:

是否可以同时使用 UIScrollView 和将 UITableView 放置在屏幕中间的某个位置来实现平滑滚动? UIScrollView contentSize 被拉长以适应 UITableView 的额外高度。 UITableView 应该能够包含无限且未知的行数。向下滚动整个视图将导致上部非表格视图部分首先消失,然后像常规表格视图一样向下滚动。

换句话说,我想在第一行之前实现一个包含一些固定内容的表格。把它想象成表格的“标题区域”,向上滚动并让位于整个表格行。

我可能知道我可以实现一个 TableView 并以编程方式使第一行包含一些固定图像。这样,它将按预期工作。但是哪个更容易实现?

【问题讨论】:

tableHeaderView 属性不能满足您的需求吗? 【参考方案1】:

您真的不想将表格放在滚动视图中。当用户在表格上滚动时,它不会移动底层的滚动视图,因此您不会得到您想要的效果。

改为实现 viewForHeaderInSection 并传入要在第一行上方显示的视图,或设置 tableViewHeader。

【讨论】:

以上是关于如何同时使用 UIScrollView 和 UITableView 实现平滑滚动?的主要内容,如果未能解决你的问题,请参考以下文章

如何一键同时控制两个 UIScrollView?

如何防止使用 UICollectionView 滚动 UIScrollView

如何同时使用带有导航控制器的 segue?

同时滚动和捏合多个 UiScrollView

使用 UIScrollView 旋转后出现奇怪的行为

如何让 UIScrollView 滚动到 UITextView 的光标位置?