ブログ アプリで記事を更新し、以前のリリース以降に作成された可能性のある新しい記事を追加しようとしています。
TableView は配列 _allEntries を使用します。ユーザーが更新ボタンをクリックすると、配列をクリアする必要があり、それをクリアした後、元の起動コードを実行して RSS を解析し、テーブル ビューを再作成する必要があると言われました。私はそれをやっています:
[_allEntries removeAllObjects];
[self refresh];
ただし、それを行うと、次のエラーでクラッシュします。
*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 4 beyond bounds for empty array'
私が間違っていることについて何か考えはありますか?
編集:これが私のviewDidLoadと更新コードと更新コードです。
- (void)viewDidLoad { [super viewDidLoad];
self.allEntries = [NSMutableArray array];
self.queue = [[[NSOperationQueue alloc] init] autorelease];
self.feeds = [NSArray arrayWithObjects:@"feedurlhere", nil];
[self refresh];
}
- (void)refresh {
for (NSString *feed in _feeds) {
NSURL *url = [NSURL URLWithString:feed];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDelegate:self];
[_queue addOperation:request];
}
}
-(void)updatearticle {
[_allEntries removeAllObjects];
[self refresh];
}