如何构建iOS版本的Twitter个人资料屏幕?

我想知道Twitter是如何实现它的个人资料屏幕的。 起初我认为这是一个带有标题(个人资料信息)和节标题(用于选择推文/媒体/collections夹的分段控件)的表格视图。 这对我来说是有意义的,因为当用户向下滚动时,配置文件信息会消失,但是分段控件会保留,这正是UITableView标题视图和节标题的完全行为。 在导航栏的顶部还有一个图像视图,但这对我来说并不重要。 这是我认为它的可视化:

Twitter个人资料屏幕架构(我的可视化)

我试图在Interface Builder中重新创建它,这就是我得到的。 滑块引起了我的注意:它与Twitter应用程序不同,它从表视图标题的顶部开始,而不是在单元格的顶部。

我在Interface Builder中的实现 Twitter的滑块是不同的

那么……他们是如何实现的呢? 他们是否在UIScrollView中放置了UITableView并自行处理了触摸/滚动事件? 我不这么认为,因为它气馁,但我想不出另一种解释。

我不确定滑块,但在这里他们用模仿推特个人资料视图做得非常好。 所以仔细看看,也许你会觉得这很有帮助。

您可以使用滚动指示器的高度调整以位于标题下方

tableView.scrollIndicatorInsets = UIEdgeInsetsMake(yOffset, 0, 0, 0) 

yOffset将是标题屏幕高度的当前值。 如果您在用户使用UIScrollViewDelegate中的scrollViewDidScroll方法向下滚动时进行调整,它将实现twitter使用的平滑变化效果。

此页面详细介绍了如何创建twitter配置文件效果,建立在上面由njuri提供的链接中描述的方法,包括更改滚动条以正确定位。