首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >feedly样式表格/滚动视图

feedly样式表格/滚动视图
EN

Stack Overflow用户
提问于 2014-04-16 07:25:03
回答 2查看 305关注 0票数 0

我想实现feedly风格的UITableView / UIScrollView (但水平)。我正在寻找一些信息,以适当的方式做这件事,但找不到任何有用的信息。如果你不知道我所说的"feedly样式的表格视图滚动“是什么意思,这里有一个带有滚动feedly屏幕的简短youtube movie的链接

如果有任何提示、想法和开源项目能对这种方法有所帮助,我将不胜感激。

EN

回答 2

Stack Overflow用户

发布于 2014-04-29 14:38:07

我找到了PBGroupScrollController,它就是我想要的。我会给它一个机会,并测试它。即使它需要一些改进,这也是一个非常好的起点!感谢piotrbernard

票数 0
EN

Stack Overflow用户

发布于 2014-04-16 08:08:20

停止寻找表格或滚动视图。甚至不是集合视图。

好吧,坦率地说,滚动视图可以做到这一点,但你很容易迷失在滚动视图的几何形状中。

您需要一种通过响应触摸手势来手动滚动视图(而不是UIScrollViews)的方法。我不知道有没有一个好的例子或者教程是由heard提供的。但是如果你在谷歌上搜索facebook风格菜单的示例代码,那么你会发现一些甚至水平地做这类事情的代码。

基本思想是将视图控制器与视图堆叠在一起(我不建议这样做),或者让一个视图控制器具有多个视图(两个或三个),其中两个或三个视图占满整个屏幕,其中一个位于另一个的顶部,而不是下面视图的子视图。事实上,所有2个或3个视图都是兄弟视图,但顶部的视图后来被添加到公共superview中,或者被移到顶部。我会先在下面添加视图,然后添加可见视图,然后在屏幕外的顶部添加视图。

所以,看看这些教程中的一个,并学习如何根据触摸手势拖动视图。它出奇的简单。这只是因为在cocoa touch中没有内置的控件可用。

因此,对于您希望能够将其中一个视图移出屏幕的两个视图,请执行此操作。为了方便用户,只要拖动到窗口顶部附近的某个点,就添加将顶视图动态移出屏幕的部分。

一旦你实现了这一点,添加第三个视图-如果你想的话。第三个视图从一开始就不在屏幕上,可以向下拖动。您可以应用几乎相同的逻辑,但是当手势从屏幕的最顶部区域开始时,它将应用于要向下拖动的顶部视图。

一旦你可以用3个视图做到这一点-每个视图都有屏幕大小,其中一个要么被拖出屏幕,要么被从屏幕上拖到屏幕上,然后你只需要添加它们的无限方面。

假设您有一个由大约10个对象组成的数组,您希望显示这些对象并将其拖到屏幕上或拖走。那么你只需要3个视图就可以了。首先,我们有对象5可见的情况,假设视图1(对象5)在屏幕上方不在屏幕上,并且可以被拖动到屏幕中以隐藏与屏幕对齐的视图2(对象6)。但是当你不把视图1(对象5)拖到屏幕上时,你就把视图2(对象6)拖出了屏幕。视图2(对象6)的正下方是视图3(对象7)。仅当将视图2(对象6)拖出屏幕时,视图3(对象7)才会进入视线。

所以在你得到这种情况之前:视图1显示对象5视图2显示对象6视图3显示对象7

然后移动发生了,在移动即将完成的那一刻,你添加了我已经提到的这个“分页”效果。您可以让正在拖动的视图以动画方式完成视图,直到它完全移入屏幕或移出屏幕。

如果视图2被移出屏幕,那么您只需在3个视图之间移动显示的对象即可。在此之后,您已经重置了所有视图。视图1,同样隐藏在视图2下,两者都只占满屏幕。视图3的大小相同,但恰好位于屏幕上方。但它们与显示的对象相关,如下所示:视图1显示对象4视图2显示对象5视图3显示对象6

如果移动是另一种方式,则按如下方式分配它们:视图1显示对象6视图2显示对象7视图3显示对象8

现在,您已经获得了视频中所示的行为。你只需要决定你是想让视图无休止地循环滚动,还是想让它们结束。当你想要它们结束的时候,想一想一个解决方案,其中视图0显示某种背景,其中视图10是最终的,这意味着没有视图11可以被拖到屏幕上。

以无休止的方式责备他们甚至可能更容易一些。使用对象10作为对象0,使用对象1作为对象11,并从那里继续。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23096299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档