使用线程下载网络图片

屏幕快照 2016-09-29 14.44.38.png

点击按钮,使用线程下载网络图片

@property (strong, nonatomic) IBOutlet UIImageView *iv;
@property (strong, nonatomic) IBOutlet UIButton *btn;
- (IBAction)showImage:(id)sender;

- (IBAction)showImage:(id)sender {
    
    NSString *url = @"http://ppt.downhot.com/d/file/p/2014/07/24/e8660d99f4cf021d4f0fc80b11902779.jpg";
    NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(downloadImageFormURL:) object:url];
    [thread start];
}

//定义一个方法作为线程的执行体
-(void)downloadImageFormURL:(NSString *)url{
    //从网络获取数据
    NSData *data = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:url]];
    
    UIImage *image = [[UIImage alloc] initWithData:data];
    if (image != nil) {
        //在主线程中执行updateUI:的方法
        [self performSelectorOnMainThread:@selector(updateUI:) withObject:image waitUntilDone:YES];
    }
    else{
        NSLog(@"----下载图片出现错误----");
    }
}

-(void)updateUI:(UIImage *)image{
    self.iv.image = image;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,044评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,194评论 4 61
  • 1917年11月7日,列宁领导的布尔什维克武装力量向资产阶级临时政府所在地圣彼得堡冬宫发起总攻,推翻了临时政府,建...
    无间行者lee阅读 6,447评论 0 0
  • 生活如海,宽容如洲,泛洲与海,方知海之宽广,生活如山,宽容如茎,曲径登山,方之山之高大。生活如曲,宽容如歌,和曲而...
    瑞霸阅读 1,872评论 1 2
  • 阅读时间:2015年10月15日18:00/19:00 阅读目的:进程是系统根本,详细了解进程是了解系统的根本 阅...
    文魁大脑马帅阅读 2,481评论 0 2