最近項(xiàng)目遇到個(gè)問(wèn)題,有個(gè)界面數(shù)據(jù)由多個(gè)接口來(lái)提供,使用MJRefresh刷新時(shí)候出了遇到了問(wèn)題,不知道該何時(shí)結(jié)束刷新。。。
開(kāi)始想在每個(gè)請(qǐng)求的block中加個(gè)值判斷,然后處理刷新,尼瑪要是有100個(gè)接口這得寫(xiě)100遍啊,,,煩
翻了以下資料發(fā)現(xiàn)了強(qiáng)大的GCD幫我解決了問(wèn)題~
以下下是部分代碼:
dispatch_group_t group = dispatch_group_create();
//獲取推薦計(jì)劃
dispatch_group_enter(group);
[PXBEngine getRecommandWithID:@"" Success:^(NSDictionary *dict) {
NSLog(@"get recommand project success");
dispatch_group_leave(group);
} failure:^(NSError *error) {
dispatch_group_leave(group);
}];
//獲取最新三條項(xiàng)目
dispatch_group_enter(group);
[PXBEngine getLatestProjectSuccess:^(NSDictionary *dict) {
NSLog(@"get latest project success");
dispatch_group_leave(group);
} failure:^(NSError *error) {
dispatch_group_leave(group);
}];
dispatch_group_notify(group, dispatch_get_main_queue(), ^{
[self reloadData];
[self.mj_header endRefreshing];
NSLog(@"tableView reloadData success");
});
少些好多代碼,哈哈哈
看完上面??這個(gè)再講一個(gè)偷懶的經(jīng)歷,
由于我的項(xiàng)目首頁(yè)展示了很多內(nèi)容,所以隱藏了首頁(yè)導(dǎo)航欄。
但是跳轉(zhuǎn)到其他頁(yè)面時(shí)候要顯示導(dǎo)航欄,所以要在每個(gè)跳轉(zhuǎn)頁(yè)面加上這么一段代碼:
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
self.navigationController.navigationBar.hidden = NO;
}
首頁(yè)跳轉(zhuǎn)的頁(yè)面有十幾個(gè),這要復(fù)制粘貼十幾遍啊,大寫(xiě)的煩!
本想去看看能不能在push pop的時(shí)候搞點(diǎn)事情,無(wú)意中發(fā)現(xiàn)了這個(gè)
// Called when the navigation controller shows a new top view controller via a push, pop or setting of the view controller stack.
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated;
- (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated;
試著用了一下,正是我想要的結(jié)果,哈哈