图片第二次出现我打开标签 (Swift)
Image appears at second time I`m openig tab (Swift)
我正在从网络上获取图片,然后我想将其添加到表单上的 ImageView
中。一切正常,但我只能在第二次打开它的选项卡时才能在表单上看到图像。所以我必须打开我需要的标签,然后打开另一个(随机),然后回到我需要的标签。
我录制了一段短片来展示我在说什么
http://youtu.be/h8iDzNqSXV4
这是我的代码
override func viewDidAppear(animated: Bool) {
var imageViewObject :UIImageView
imageViewObject = UIImageView(frame:CGRectMake(50, 100, 100, 100)) //x,y,width,height
let link=NSURL(string: "http://ipic.su/img/img7/fs/ProdukciyaApple.1438079721.png")
getDataFromUrl(link!){result in
imageViewObject.image = UIImage(data: result!)
}
self.imageView.addSubview(imageViewObject)
self.imageView.sendSubviewToBack(imageViewObject)
}
func getDataFromUrl(urL:NSURL, completion: ((data: NSData?) -> Void)) {
NSURLSession.sharedSession().dataTaskWithURL(urL) { (data, response, error) in
completion(data: data)
}.resume()
}
我该如何解决?感谢任何帮助
通常,您在 viewDidAppear 中的代码应该进入 viewDidLoad 函数,因为您希望它在视图可见之前发生。
我无法测试 atm,但这应该可以解决问题。
我正在从网络上获取图片,然后我想将其添加到表单上的 ImageView
中。一切正常,但我只能在第二次打开它的选项卡时才能在表单上看到图像。所以我必须打开我需要的标签,然后打开另一个(随机),然后回到我需要的标签。
我录制了一段短片来展示我在说什么 http://youtu.be/h8iDzNqSXV4
这是我的代码
override func viewDidAppear(animated: Bool) {
var imageViewObject :UIImageView
imageViewObject = UIImageView(frame:CGRectMake(50, 100, 100, 100)) //x,y,width,height
let link=NSURL(string: "http://ipic.su/img/img7/fs/ProdukciyaApple.1438079721.png")
getDataFromUrl(link!){result in
imageViewObject.image = UIImage(data: result!)
}
self.imageView.addSubview(imageViewObject)
self.imageView.sendSubviewToBack(imageViewObject)
}
func getDataFromUrl(urL:NSURL, completion: ((data: NSData?) -> Void)) {
NSURLSession.sharedSession().dataTaskWithURL(urL) { (data, response, error) in
completion(data: data)
}.resume()
}
我该如何解决?感谢任何帮助
通常,您在 viewDidAppear 中的代码应该进入 viewDidLoad 函数,因为您希望它在视图可见之前发生。 我无法测试 atm,但这应该可以解决问题。