rss取得をしてみようと思った。NSXMLParserというのを使うらしい。
・参考
http://eure.jp/blog/swift_rss_kim/
BlogReader App in Swift – Ravi Shankar
Qiitaの投稿を読む
下記のフィードを取得する
Swiftタグが付けられた新着記事 - Qiita
override func viewDidLoad() { super.viewDidLoad() let url : NSURL = NSURL(string: "http://qiita.com/tags/Swift/feed.atom") var parser : NSXMLParser = NSXMLParser(contentsOfURL: url) parser.delegate = self parser.parse() }
titleタグを取得
func parser(parser: NSXMLParser!, didStartElement elementName: String!, namespaceURI: String!, qualifiedName qName: String!, attributes attributeDict: NSDictionary!){ eName = elementName if elementName == "title"{ println("parse start") println("Element's name is \(elementName)") println("Element's attributes are \(attributeDict)") postTitle = String() postLink = String() } }
func parser(parser: NSXMLParser!, foundCharacters string: String!) { let data = string.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceAndNewlineCharacterSet()) if(!data.isEmpty){ if eName == "title"{ postTitle += data }else if eName == "url"{ postLink += data } } }
foundCharactersという名前から文字列を見つける関数だと思う。titleタグ、urlタグがあればどんどん文字をつなげていく。
func parser(parser: NSXMLParser!, didEndElement elementName: String!, namespaceURI: String!, qualifiedName qName: String!) { println("postTile" + postTitle) println("postLink" + postLink) }
実行結果
http://qiita.com/moshisora/items/b8fd89dba1ce7d540b8b
TabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
上のようなフィードを読み込むと、
postLinkhttp://qiita.com/moshisora/items/b8fd89dba1ce7d540b8b
parse start
Element's name is title
Element's attributes are {
}
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
postLink
postTileTabbedApplicationを複数のstoryboardとコードによる画面遷移で実装する
これが出力される。
postLink、postTileが繰り返されているので、これは直さないといけない笑。