LazyScrollView
基于 LazyScrollView,我们创造了动态创建模块化 UI 页面的解决方案,详情可见 Tangram-iOS。
LazyScrollView 是一个 iOS 滚动视图,用于解决视图的可重用性问题。
与 UITableView 相比,LazyScrollView 可以轻松地创建不同的布局,而不仅仅是单行流布局。
与 UICollectionView 相比,LazyScrollView 可以创建没有网格布局的视图,并提供了一种在滚动视图中创建不同布局的更简单方法。
基于 LazyScrollView,我们创建了一个构建动态 UI 页面的模块化 UI 解决方案,更多详情请参见此仓库:Tangram-iOS
安装
LazyScroll 可在 CocoaPods 中作为 LazyScroll
使用。
pod 'LazyScroll'
您也可以从发布页面下载源文件,然后将其手动添加到您的项目中。
用法
#import "TMMuiLazyScrollView.h"
然后,创建 LazyScrollView
TMMuiLazyScrollView *scrollview = [[TMMuiLazyScrollView alloc]init];
scrollview.frame = self.view.bounds;
接下来,实现 TMMuiLazyScrollViewDataSource
@protocol TMMuiLazyScrollViewDataSource <NSObject>
@required
// Number of items in scrollView.
- (NSUInteger)numberOfItemInScrollView:(TMMuiLazyScrollView *)scrollView;
// Return the view model (TMMuiRectModel) by index.
- (TMMuiRectModel *)scrollView:(TMMuiLazyScrollView *)scrollView rectModelAtIndex:(NSUInteger)index;
// Return view by the unique string that identify a model (muiID).
// You should render the item view here.
// You should ALWAYS try to reuse views by setting each view's reuseIdentifier.
- (UIView *)scrollView:(TMMuiLazyScrollView *)scrollView itemByMuiID:(NSString *)muiID;
@end
接下来,设置 LazyScrollView 的数据源
scrollview.dataSource = self;
最后,进行重新加载
[scrollview reloadData];
更多详细内容,请克隆该仓库并打开示例项目。
微信群
搜索 tangram_
或扫描以上二维码添加 Tangram 为好友,以便我们邀请你入群。