0

假设我有一个名为Topic的对象。在该主题中,我可以创建Messages。最近的消息需要是列表中的第一条消息(这已经完成)。我的问题是我需要在可以向右或向左滚动的视图中显示消息(向右显示旧消息,向左返回新消息)。想象一个可以横向滚动的图像集合,ScrollView它应该是什么样子。由于消息是由用户添加的,我不能使用UIImage.

有什么意见我应该如何处理?或者你知道任何可以帮助我的教程链接吗?谢谢。

4

2 回答 2

1

我发现 Apple 的Street Scroller演示应用程序是一个很好的灵感来源,可以用来做类似于您建议的事情。尽管该演示似乎强调了“无限滚动”方面,但它也演示了如何实现一个填充了小细节视图的平滑滚动视图 - 在您的情况下,这些小细节视图将用于显示有关消息的详细信息。

<self-advertisement>演示是相当基本的,它与一些可以直接放入应用程序并且开箱即用的库代码相去甚远。在我自己的应用程序中,我尝试概括概念并编写一个可重用的类,该类提供无缝(即不分页)滚动有限数量的项目视图。如果您有兴趣,请查看此 GitHub 存储库ItemScrollView中的课程。一如既往,YMMV。</self-advertisement>

于 2013-07-05T11:42:46.023 回答
0

也许您可以使用此滚动视图,只需创建一个包含标签的单元格,该标签将保存消息并传递消息数组,就像您使用数组填充 tableview 单元格一样。此滚动视图还将负责重用您的视图。:) 所以不用担心内存。

只需实现以下数据源方法

-(VSScrollViewCell *)vsscrollView:(VSScrollView *)scrollView viewAtPosition:(int)position;
// implement this to tell VSScrollview the view at position "position" . This view is VSScrollviewCell or subclass of VSScrollviewCell.

-(NSUInteger)numberOfViewInvsscrollview:(VSScrollView *)scrollview;

// implement this to tell VSScrollview about number of views you want in VSSCrollview.

默认情况下,单元格的高度和宽度将是滚动视图的边界,单元格之间的间距将为 0,您可以使用自述文件中列出的其他数据源方法进行自定义。

于 2013-07-05T10:18:28.317 回答