瘦身UITableViewController

小豬熊發表於2017-12-13

如果我們用UITableViewController的話,一般情況下都會重複的在每個類裡面寫如下三個方法

#pragma mark UITableViewDataSource

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return 10;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    PGTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellReuseIdentifier];
    return cell;
}
複製程式碼

如果專案大的話,每個類都要寫,寫的很臃腫,很麻煩,那麼有沒有辦法可以解決呢
答案就是PGBaseDataSource

PGBaseDataSource的寫法

[[PGBaseDataSource instance] numberOfSectionsInTableView:^NSUInteger(UITableView *tableView) {
    return 1;
} numberOfRowsInSection:^NSUInteger(UITableView *tableView, NSInteger section) {
    return 10;
} cellForRowAtIndexPath:^UITableViewCell *(UITableView *tableView, NSIndexPath *indexPath) {
    PGTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellReuseIdentifier];
    return cell;
}];
複製程式碼

Cocoapods安裝

pod 'PGBaseDataSource'
複製程式碼

PGBaseDataSource地址

https://github.com/xiaozhuxiong121/PGBaseDataSource
複製程式碼

相關文章