我使用的是RubyMotion、冒泡包装::RSSParser和ProMotion。我的目标是阅读带有冒泡包装::RSSParser的RSS提要,以普及TableView。
我有以下设置:
def on_init
@data = []
end
def table_data
[{
title: "",
cells: @data
}]
end
def on_load
@data = []
feed = BW::RSSParser.new("URL")
feed.parse do |item|
@data << item.to_hash
end
@data
end由于某些原因,@data数组是nil,但是当我执行p item.to_hash时,哈希将正确地打印到控制台。
有人知道为什么这不管用吗?
发布于 2014-04-09 17:34:52
我认为这可能是因为RSSParser是一个异步请求。在请求完成之前,您可能返回@data为空。
编辑:通过BubbleWrap 文档,您可以为解析器设置一个委托。有点像
feed_parser = BW::RSSParser.new("http://feeds.feedburner.com/sdrbpodcast")
feed_parser.delegate = self
feed_parser.parse do |item|
@data << item.to_hash
end
def when_parser_is_done
table_data
endhttps://stackoverflow.com/questions/22951363
复制相似问题