通过局部变量(int 指针)block内改变静态值
static int _pageSizeAllContent = 5;
static int _offsetAllContent = 0;
static int _pageSizeVideoContent = 5;
static int _offsetVideoContent = 0;
static int _pageSizeImageContent = 5;
static int _offsetImageContent = 0;
static int _pageSizeRecordContent = 5;
static int _offsetRecordContent = 0;
- (void)contentListByOffset:(int)offset AndIndex:(NSInteger)index{
CONTENT_TYPE aTypes[] = {TYPE_ALL,TYPE_VIDEOS,TYPE_PHOTOS,TYPE_AUDIOS};
int *offsetsContent[] = {&_offsetAllContent,&_offsetVideoContent,&_offsetImageContent,&_offsetRecordContent};
int *pageSizesContent[] = {&_pageSizeAllContent,&_pageSizeVideoContent,&_pageSizeImageContent,&_pageSizeRecordContent};
NSArray *tableViews = @[self.backgroundView.allTabView,self.backgroundView.videoTabView,self.backgroundView.imageTabView,self.backgroundView.recordTabView];
NSArray *dataSourcesArray = @[self.allDataSouceArray,self.videoDataSouceArray,self.imageDataSouceArray,self.recordDataSouceArray];
CONTENT_TYPE aType = aTypes[index];
__block int* offsetContent = offsetsContent[index];
__block int* pageSizeContent = pageSizesContent[index];
__block UITableView *tableView = tableViews[index];
__block NSMutableArray *modelsArray = dataSourcesArray[index];
@WeakObj(self);
[[KapContentClick client] contentListByPageSize:*pageSizeContent AndOffset:offset AndQuery:nil AndCategory:self.category AndUserID:nil AndAtype:aType withSuccess:^(NSArray *modelArray) {
*offsetContent = offset;
NSLog(@"offsetContent = %d,pageSizeContent = %d",*offsetContent,*pageSizeContent);
[tableView.mj_header endRefreshing];
[tableView.mj_footer endRefreshing];
if(modelArray.count < *pageSizeContent){// 没有更多数据了
[tableView.mj_footer endRefreshingWithNoMoreData];
}
if (*offsetContent == 0) {
[modelsArray removeAllObjects];
}
[modelsArray addObjectsFromArray:modelArray];
[tableView reloadData];
[selfWeak resetScrollerViewContentSize];
} andFailure:^(NSInteger errorCode, NSString *errorMsg) {
[tableView.mj_header endRefreshing];
[tableView.mj_footer endRefreshing];
}];
}