ATList
示例
Swift
版本在此处 List
- 通用配置(可选,如不配置则使用默认配置)
#import <UIScrollView+ATList.h>
@implementation ATAppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOption {
// Override point for customization after application launch.
// 列表配置(可选,如不设置,取默认)
[ATListDefaultConf setupConf:^(ATListConf * _Nonnull conf) {
conf.loadStyle = ATLoadStyleAll;
conf.loadStrategy = ATLoadStrategyAuto;
ATBlank *failureBlank = blankMake(blankImage(ATBlankTypeFailure), @"请求失败", @"10010");
ATBlank *noDataBlank = blankMake(blankImage(ATBlankTypeNoData), @"暂无数据", @"10011");
ATBlank *noNetworkBlank = blankMake(blankImage(ATBlankTypeNoNetwork), @"没有网络", @"10012");
noDataBlank.isTapEnable = NO;
conf.blankDic = @{@(ATBlankTypeFailure) : failureBlank,
@(ATBlankTypeNoData) : noDataBlank,
@(ATBlankTypeNoNetwork) : noNetworkBlank,};
conf.length = 20;
}];
return YES;
}
@end
- 具体页面中使用
#import <UIScrollView+ATList.h>
// 具体列表配置(可选,如不设置,则取 ATListDefaultConf,ATListDefaultConf 未设置时取 conf)
@weakify(self);
[self.tableView updateListConf:^(ATListConf * _Nonnull conf) {
conf.loadStrategy = self.loadStrategy;
conf.loadStyle = self.loadStyle;
conf.blankDic = @{@(ATBlankTypeFailure) : blankMake(blankImage(ATBlankTypeFailure), @"绘本数据加载失败", @"10015")};
conf.length = 20;
}];
// 加载数据
[self.tableView loadListData:^(ATList * _Nonnull list) {
NSDictionary *parameters = @{@"offset" : @(list.range.location),
@"number" : @(list.range.length)};
@strongify(self);
[self requestData:parameters finished:^(NSError *error, NSArray *datas) {
if (list.loadStatus == ATLoadStatusNew) [self.datas removeAllObjects];
if (datas && datas.count > 0) [self.datas addObjectsFromArray:datas];
[list finish:error];
}];
}];
需求
安装
ATList可通过CocoaPods获得。要安装它,请在Podfile中添加以下行
pod 'ATList'
作者
ablett, [email protected]
授权
ATList可在MIT许可证下使用。了解更多信息,请参阅LICENSE文件。