前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IOS 多线程、进程

IOS 多线程、进程

作者头像
用户5760343
发布2019-07-08 13:01:39
4990
发布2019-07-08 13:01:39
举报
文章被收录于专栏:sktjsktj

1 let thread = Thread.init(target:self, selector:

selector(ViewController.threadAction), object:nil)

2 thread.stackSize = 1024 * 1024

代码语言:javascript
复制
///使用线程下载图片
 1 var imageView = UIImageView()
 2 var label = UILabel()
 接着对viewDidLoad方法进行修改,对imageView属性和label属性进
 行初始化,并创建一个新的线程来执行网络图片的下载工作。
 3 override func viewDidLoad() {
 4 super.viewDidLoad()
 5 // Do any additional setup after loading the view,
 typically from a nib.
 6 imageView = UIImageView(frame:CGRect(x:0, y:
 260, width:320, height:300))
 7 self.view.addSubview(imageView)
 8
 9 label = UILabel(frame:CGRect(x:0, y:0, width:
 320, height:568))
 10 label.backgroundColor = UIColor.white
 11 label.textAlignment = .center
 12 label.text = “Loading……”
 13 label.font = UIFont.systemFont(ofSize:42)
 14 self.view.addSubview(label)
 15
 16 let imageUrl =
 “http://images.apple.com/v/iphone/home/s/home/images/trade_in_iphone_17 let thread = Thread(target:self, selector:
 selector(ViewController.downloadImage), object: imageUrl)
 18 thread.start()
 19 }
 20 func downloadImage(path:String){
 21 let url = URL(string:path)
 22 var data:Data!
 23 do{
 24 try data = Data(contentsOf:url!)
 25 let image = UIImage(data:data)
 26 self.perform(#selector(ViewController.showImage),
 on:Thread.main, with:image, waitUntilDone:true)
 27 }catch{
 28 print(“下载图片失败。”)
 29 }
 30 }
 31 func showImage(image:UIImage){
 32 self.imageView.image = image
 33 self.label.isHidden = true
 34 }
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.06.10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • selector(ViewController.threadAction), object:nil)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档