使用水平滚动表视图时滑动标题视图栏

时间:2012-08-19 10:47:26

标签: iphone ios uitableview uiscrollview horizontalscrollview

我正在构建一个在滚动视图中有多个tableviews的应用程序,该滚动视图启用了分页并水平滚动。每个tableview都有一个标题。

我希望能够水平滚动,并在表格视图上方(在导航栏下方显示桌面视图的所有标题,并以另一种速度滚动表格视图。

我附上两张截图,以帮助您理解我的意思。

1)我有一个自定义的导航栏,里面有一个Filter按钮。我想保留它而不是碰它。

2)我有一个酒吧(俱乐部1,俱乐部2,俱乐部3,我希望能够水平滚动)。我们称之为“标题栏”

3)我有表格视图,我希望能够水平滚动。每个表视图的标题都在我所谓的“标题栏”

正如您在第二张图片中看到的那样,红色矩形内部的内容是需要修复的内容。当我水平滚动时,我希望条形图保持原位,表格视图的标题可以顺畅而自然地移动。

Example of a page with tableview What happens when I scroll

我现在正在做的事情正在为每张桌子使用HEADER VIEWS而不是使用特殊的真实酒吧,这绝对不符合我的目的。

我想要的是什么是一个显示标题的栏,并且跟随我自然滚动的tableviews,而不是每个tableview都粘贴的标题视图。我想要的例子有ZiteGoogle Play Music on Android

感谢您的时间! 如果有人有问题,解决方案或任何有用的想法,请分享。再次感谢你!

2 个答案:

答案 0 :(得分:0)

我的建议如下:

在没有此标题的情况下,将tableviews放在此scrollview(letcall it containerScrollView)旁边。然后,您创建另一个scrollview(让我们称之为headerScrollView),并将此headerScrollView的高度设置为红色方块内的此高度,并将其userInteractionEnabled设置为NO

现在,对于添加到containerScrollView的每个tableView,您还添加了一个包含这些标签的UIView(club 1,club 2 ...)。在委托方法`scrollViewDidScroll'中,如果滚动了containerScrollView,则会得到,并以编程方式滚动headerScrollView以显示不同的数据。

答案 1 :(得分:0)

在主容器视图中,您需要两个视图,而不仅仅是滚动视图。因此顶部视图是您的标题,底部较大的视图是滚动视图。滚动视图页面时,您可以执行您想要的动画,以更改标题,但该视图不会移动。实际上你可以翻转它,让它看起来像是垂直旋转 - 一些光滑的东西。