Twitter 是如何在个人资料屏幕上实现粘性 UISegmentedControl 栏的? [关闭]

Posted

技术标签:

【中文标题】Twitter 是如何在个人资料屏幕上实现粘性 UISegmentedControl 栏的? [关闭]【英文标题】:How did Twitter implement the sticky UISegmentedControl bar on the profile screen? [closed] 【发布时间】:2015-07-28 04:11:57 【问题描述】:

在 Twitter iPhone 应用程序的个人资料屏幕上,当您向下滚动时,UISegmentedControl 会停留在屏幕顶部。我想知道……他们是怎么做到的?我还想知道当您拉动时它们如何拉伸图像,以及您的名字如何向上移动到导航栏中,但我认为这些可能属于单独的问题。

【问题讨论】:

我的第一个猜测是他们把它放在标题行中,假设整个事情都是作为表格视图实现的。然而,除非他们真的把分段控制之后的所有东西都做成了一个部分,否则我不明白为什么它会一直坚持到用户时间线结束时超过所有其他部分。 【参考方案1】:

当通过UIScrollViewDelegate 处理滚动事件时,您可以通过将标题的 y 位置设置为等于垂直内容偏移量来在 UIScrollView 内创建一个粘性标题。看看this answer。

为了拉伸图像,再次在 scrollView: didScroll: 调用中,您可以根据内容偏移应用所需的转换。

显然,还有许多其他方法可以实现这些效果。

【讨论】:

以上是关于Twitter 是如何在个人资料屏幕上实现粘性 UISegmentedControl 栏的? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在底部屏幕上实现可滚动选项卡

如何在屏幕上实现具有许多文本字段的 NSScrollView?

如何在 Android 上实现通过另一个屏幕上的操作关闭的警报?

如何在我的个人网店上实现PAYPAL的支付链接?

Flutter - 如何在 Flutter 应用上实现 News Count

如何制作一个只在android屏幕上浮动的粘性列表项?