我正在使用 Rubymotion 构建一个 iOS 应用程序。我正在创建一个自定义 tableview 行,我想从远程 API 向它添加一个大图像(从 JSON 对象获取 URL)。
我怎样才能做到这一点?我在任何地方都找不到如何从远程 URL 创建图像然后将其添加到单元格中。
感谢所有帮助!
更新
我现在正在使用此代码,但滚动表格时性能非常差。
url = NSURL.URLWithString("http://www.gravatar.com/avatar/1d92e61d7066383b1e3c797ea635f86e?s=128&d=identicon&r=PG")
data = NSData.dataWithContentsOfURL(url)
remote = UIImage.imageWithData(data)
image = UIImageView.alloc.initWithFrame([[50, 50],[150, 50]])
image.contentMode = UIViewContentModeScaleAspectFit
image.image = remote
更新 2
我最终得到了这个性能良好的代码。现在我只需要弄清楚我们如何缓存图像。
Dispatch::Queue.concurrent.async do
data = NSData.alloc.initWithContentsOfURL(NSURL.URLWithString(post.image_medium))
if data
image = UIImage.alloc.initWithData(data)
Dispatch::Queue.main.sync do
image_view = UIImageView.alloc.initWithFrame([[210, 10],[80, 80]])
image_view.image = image
view.addSubview(image_view)
end
end
end