2012-04-24 10 views
1

を私はすべての作品と罰金更新しますが、私はダウンビューを引っ張ったときに更新するにはあまりにも多くの、エラーでアプリがクラッシュし、EGOTableViewPullRefresh私のプロジェクトでを埋め込まれたとき:EGOTableViewPullRefreshクラッシュの上に放出ビュー

2012-04-24 19:02:56.670 Test [3927: f803] * Terminating app due to uncaught exception 'NSRangeException', reason: '* - [__NSArrayM objectAtIndex:]: index 2 beyond bounds for empty array' * First throw call stack:

コードの一部

self.tabBarController = [[[UITabBarController alloc] init] autorelease]; 
NSMutableArray * viewControllers = [[NSMutableArray alloc] init]; 


//plist file full path 
NSString *urlStr = [[NSString alloc] 
        initWithFormat:@"http://www.test.com/data.xml?seedVar=%f", 
        (float)random()/RAND_MAX]; 
NSURL *url = [NSURL URLWithString:urlStr]; 
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfURL:url]; 

    //Get the folder array 
NSArray * subscriptionFolders = [dict objectForKey:@"Folders"]; 

UPDATE

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ 
    static NSString *CellIdentifier = @"Cell"; 

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) { 
     cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease]; 
     [cell.textLabel setNumberOfLines:2]; 
     [cell.detailTextLabel setNumberOfLines:3]; 
     [cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator]; 
    } 

    RSSItem * rssItem = (RSSItem *)[_rssParser.rssItems objectAtIndex:indexPath.row]; 
    [cell.textLabel setText:rssItem.title]; 
    [cell.detailTextLabel setText:rssItem.summary]; 

    return cell; 
} 

これを手伝ってもらえますか?

+0

ここには配列はありません。だからあなたはどこかでクラッシュしています...あなたのコードで配列にアクセスしている場所を見てください。あなたはEGOTableVIewを言及しているので、私はあなたがテーブルビューのデータソースcellForRowAtIndexPath関数でクラッシュしていると思います。 – Lefteris

+0

これはどういう意味ですか?更新されたコードを参照 –

+0

私はコードを追加しました –

答えて

0

解決策が見つかりました。私がと呼ぶと、rssParserにreloadTableViewDataSourceがクラッシュします。私が電話しようとしたときrssParserdataSourceDidFinishLoadingNewDataクラッシュすることなく正常に動作します。

- (void)reloadTableViewDataSource{ 
[super performSelector:@selector(dataSourceDidFinishLoadingNewData) withObject:nil afterDelay:2.0]; 
} 

- (void)dataSourceDidFinishLoadingNewData{ 
    [_rssParser start]; 
    [refreshHeaderView setCurrentDate]; 
    [super dataSourceDidFinishLoadingNewData]; 
} 
関連する問題