當我加載我的主視圖時,它會自動加載包含博客文章的JSON供稿。爲什麼這個UIButton/IBAction不能刷新我的頁面?
我在主視圖的頂部欄上有一個刷新按鈕。我已經成功將它連接到IBAction
,點擊後,我可以輸出一個字符串進行登錄。
我想讓我的視圖重新加載JSON提要,當我點擊刷新按鈕,但不起作用。
我在做什麼錯?
我ViewController.h
#import <UIKit/UIKit.h>
@interface ViewController : UICollectionViewController {
NSArray *posts;
}
- (void)fetchPosts;
- (IBAction)refresh:(id)sender;
@end
我ViewController.m
...
- (void)viewDidLoad
{
[super viewDidLoad];
[self fetchPosts];
}
- (IBAction)refresh:(id)sender {
[self fetchPosts];
}
- (void)fetchPosts
{
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSData* data = [NSData dataWithContentsOfURL:[NSURL URLWithString: @"http://website.com/app/"]];
NSError* error;
posts = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
dispatch_async(dispatch_get_main_queue(), ^{
[self.collectionView reloadData];
});
});
}
...
是否成功下載數據? – DrummerB
你想更新UILabel嗎?你的UILabel在哪裏?它在另一個視圖控制器中嗎?你想刷新整個視圖控制器嗎?視圖控制器在切換到另一個時進行「刷新」。 – stackOverFlew
您正在嘗試重新加載視圖而不實際重新加載它? collectionView是否已成功連接到接口構建器引用插座的UITableView?請提供更多信息和更多的代碼。 – stackOverFlew