NSXMLParserでRSSをパースする

Via:Tutorial: How to create a simple RSS reader for iOS

KMXMLParser(ライブラリ?クラス?)を使いRSSをパースするサンプル。
KMXMLParserはNSXMLParserを使用し、XMLをパースしてくれる。
ダウンロードは、ここから


最終的にはこのような構成になります。

■制作の流れ
1.Empty Applicationで「Reader」プロジェクトを作成
2.KMXMLParserをダウンロードしてプロジェクトに取り込む
3.UITableViewControllerのSubClassで「MainViewController」を作る
4.Table表示がされるようにAppDelegateを設定
5.MainViewControllerでRSSの読み込みとTable表示の設定
6.UIViewControllerのSubClassで「WebViewController」を作る
7.Viewを定義してWebページを表示させる
8.終わり


単サイトのRSSを取り込んで表組みで表示して、タイトルをクリックしたらWebページを表示させるようになっています。
「この程度の処理でアプリが出来るんだ」とちょっと感心しました。

このサンプルではCNNのRSSを表示しているのですが、このサイトとか@IT、CNETとかのRSSを入れると、リンクに空白が入るようで、Webページがうまく表示されませんでした。
そこで、リンクURLに含まれる空白や改行を削除するように変更しました。

WebViewController *vc = [[WebViewController alloc] init];
//vc.url = [NSURL URLWithString:[[self.parseResults objectAtIndex:indexPath.row] objectForKey:@"link"]];
//[self.navigationController pushViewController:vc animated:YES];

NSString *link = [[self.parseResults objectAtIndex:indexPath.row] objectForKey:@"link"];
vc.url = [NSURL URLWithString:[link stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]];
[self.navigationController pushViewController:vc animated:YES];

また、読み込みに時間がかかるのか、パースに時間がかかるのか分かりませんが、まったりした表示です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)