2012-05-14 51 views
0

我是iOS新手,我沒有太多的編程經驗。我不是要重新從一個RSS feed一個UITableView我跟着下面的教程:RSS Tutorial重新加載RSSFeed點擊UIBarButtonItem

我似乎無法到重裝按鈕有時添加到它,它無法加載第一次,想添加按鈕到頂部欄重新加載數據。

就像我說過的,Objective-C的使用體驗幾乎沒有,但任何幫助將不勝感激。

下面的代碼是刷新飼料的部分代碼:

- (void)viewDidLoad { 
    [super viewDidLoad];  
    self.title = @"News"; 
    self.allEntries = [NSMutableArray array]; 
    self.queue = [[[NSOperationQueue alloc] init] autorelease]; 
    self.feeds = [NSArray arrayWithObjects:@"http://yourllanelli.org.uk/index.php?format=feed&type=atom", 
     nil];  
    [self refresh]; 

    _reloadButton = [[[UIBarButtonItem alloc] 
             initWithTitle:@"Settings" style:UIBarButtonItemStyleBordered 
             target:self action:@selector(reloadClick)] autorelease]; 
} 

-(void)reloadClick {  
    [UITableView refresh]; 
} 

回答

0

你實際上並沒有獲得再次從RSS源中的數據時,reloadClick動作被調用。

你想打電話給你的refresh方法,一旦你ASIHTTPRequests都完了,你要調用[UITableView reloadData]

-(void)reloadClick 
{  
    [self refresh]; 
} 

- (void) requestDidFinish:(ASIHTTPRequest *)request { 
    // you need to reload your UITableView once your ASIHTTPRequests finish. 
    // since you are sending many requests to get the contents of different feeds, 
    // it would be better to call the following line only once, 
    // when all of the requests have finished 
    [UITableView reloadData]; 
} 
+0

好吧,我給一個嘗試後。謝謝回覆。 –

+0

我得到這個警告:(沒有找到類方法'刷新'(返回類型默認爲'id')) –

+0

有一個刷新例程。 (我認爲這是一個例程)'code'-(void)refresh {0} {0} {0} {0} ASIHTTPRequest * request = [ASIHTTPRequest requestWithURL:url]; [request setDelegate:self]; [_queue addOperation:request]; } }'code' –