使用第三方 :MJRefresh
NSString *const MJCollectionViewCellIdentifier = @"Cell";
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.backgroundColor = [UIColor whiteColor];
创建collectionView
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
layout.itemSize = CGSizeMake(80, 80);
layout.sectionInset = UIEdgeInsetsMake(20, 20, 20, 20);
layout.minimumInteritemSpacing = 20;
layout.minimumLineSpacing = 20;
self.Colletion = [[ColletionView alloc]initWithFrame:[[UIScreen mainScreen] bounds] collectionViewLayout:layout];
self.Colletion.alwaysBounceVertical = YES;
self.Colletion.backgroundColor = [UIColor purpleColor];
self.Colletion.dataSource = self;
[self.Colletion registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:MJCollectionViewCellIdentifier];
[self addHeader];
[self.window addSubview:self.Colletion];
[self.Colletion release];
[self.window makeKeyAndVisible];
return YES;
}
- (void)addHeader
{
__unsafe_unretained typeof(self) vc = self;
// 添加下拉刷新头部控件
[self.Colletion addHeaderWithCallback:^{
// 进入刷新状态就会回调这个Block
// 增加5条假数据
// for (int i = 0; i<5; i++) {
// [vc.fakeColors insertObject:MJRandomColor atIndex:0];
// }
// 模拟延迟加载数据,因此2秒后才调用)
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[vc.Colletion reloadData];
// 结束刷新
[vc.Colletion headerEndRefreshing];
});
}];
}
#pragma mark - collection数据源代理
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
{
return 5;
}
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell *cell = [collectionView
dequeueReusableCellWithReuseIdentifier:MJCollectionViewCellIdentifier
forIndexPath:indexPath];
cell.backgroundColor = [UIColor redColor];
return cell;
}
转载于:https://blog.51cto.com/qccccc/1557944