如何实现回收滚动视图?

Posted

技术标签:

【中文标题】如何实现回收滚动视图?【英文标题】:How to Implement Recycle Scroll View? 【发布时间】:2015-04-15 06:18:49 【问题描述】:

目前我使用SwipeView 在回收 ScrollView 中添加多个视图,但在这个库中,我们不能为每个子视图使用动态框架。

例如:我们必须创建很多UITextView,每个文本视图都有不同的帧大小(不同的高度)。所以在这个库中它总是创建 1024 帧,剩余的视图是空的。看起来很棒。

我尝试了很多库,但它们都类似于 SwipeView。那么有人能推荐一个能满足我的限制的库吗?

P.S:我用过UITableView,但是heightForRowAtIndexPath:太费时间了

【问题讨论】:

你试过这个github.com/rydermackay/RGMPagingScrollView @BalramTiwari 将尝试。这个库是否支持子视图的各种框架? 【参考方案1】:

SwipeView 只是代表“页面”的任意视图的容器。您的问题并不完全清楚,但听起来您将UITextViews 直接用作页面?为什么不将它们包装在其他视图中,以便您可以进行任何您可能想要的布局?

【讨论】:

是的,我在 UIScollView 上使用 UITextView。我有超过 1000 个 UITextView 。如果我最初加载它会产生内存压力,所以只有我使用像SwipeView这样的可回收滚动视图 当然。但是您可以返回swipeView:viewForItemAtIndex: 中的任何视图。那么为什么不返回一个自定义视图,其中包含您想要的位置/大小的文本视图呢?

以上是关于如何实现回收滚动视图?的主要内容,如果未能解决你的问题,请参考以下文章

每次重新创建滚动位置后,如何将滚动位置保存在回收站视图中?

添加新列表时,回收站视图开始自动滚动

如何在recyclerview中定义滚动条视图的位置?

无法使用回收视图在 ScrollVIew/NestedScrollView 内滚动 ViewPager

滚动回收器视图中的滞后

回收站视图滚动到特定位置