首页 > 其他分享 >IOS开发-使用UIImageView加载网络图片

IOS开发-使用UIImageView加载网络图片

时间:2023-07-02 16:45:02浏览次数:53  
标签:frame IOS UIImageView self imgview 100 image 加载

使用UIImageView加载网络图片可以分为三步

1.创建UIImageView实例:

  UIImageView *imgview = [[UIImageView alloc] init];
    imgview.frame =CGRectMake((self.view.frame.size.width-100)/2, (self.view.frame.size.height-100)/2, 100, 100);

 

2.下载图片数据:

   NSURL *url = [NSURL URLWithString:@"https://img0.baidu.com/it/u=1752903520,1572100722&fm=253&fmt=auto&app=138&f=JPEG?w=521&h=500"];
    NSData *data = [NSData dataWithContentsOfURL:url];

 

3.从数据生成图片并设置UIImageView的image属性:

 UIImage *image = [UIImage imageWithData:data];
    imgview.image = image;

效果图:

 完整代码:

UIImageView *imgview = [[UIImageView alloc] init];
    imgview.frame =CGRectMake((self.view.frame.size.width-100)/2, (self.view.frame.size.height-100)/2, 100, 100);
    NSURL *url = [NSURL URLWithString:@"https://img0.baidu.com/it/u=1752903520,1572100722&fm=253&fmt=auto&app=138&f=JPEG?w=521&h=500"];
    NSData *data = [NSData dataWithContentsOfURL:url];
    UIImage *image = [UIImage imageWithData:data];
    imgview.image = image;
    
     UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:imgview.bounds byRoundingCorners:UIRectCornerAllCorners cornerRadii:imgview.bounds.size];

        CAShapeLayer *maskLayer = [[CAShapeLayer alloc]init];
        //设置大小
        maskLayer.frame = imgview.bounds;
        //设置图形样子
        maskLayer.path = maskPath.CGPath;
        imgview.layer.mask = maskLayer;
    
    self.view.backgroundColor = [UIColor whiteColor];
    [self.view addSubview:imgview];

 

标签:frame,IOS,UIImageView,self,imgview,100,image,加载
From: https://www.cnblogs.com/SadicZhou/p/17520947.html

相关文章

  • IOS开发-UIImageView基本用法
    UIImageView是iOS中用于显示图像(图片、gif、svg等)的视图。它的主要功能有:1.显示图片UIImageView可以通过image属性显示一张UIImage类型的图片。可以是本地图片、从网络下载的图片等。2.设置填充模式可以通过contentMode属性设置图片在UIImageView内的显示和填充模式。内容......
  • IOS开发-UIColor的基本用法
    1.使用预定义的系统颜色UIKit框架内预定义了一些常用的颜色,我们可以直接使用:UIColor*redColor=[UIColorredColor];UIColor*blueColor=[UIColorblueColor];UIColor*greenColor=[UIColorgreenColor];UIColor*blackColor=[UIColorblackColor];UIColor......
  • IOS开发-设置UILabel行间距lineSpacing
    1.如何设置UILabel行间距lineSpacing UILabel是没有这么一个直接暴露的属性的,想要修改lineSpacing,我们需要借助NSAttributedString来实现。NSMutableParagraphStyle*style=[NSMutableParagraphStylenew];style.lineSpacing=15;NSMutableDictionary*attribu......
  • IOS开发-实现一个高度自适应的UILabel和一个宽度自适应的UILabel
    1.实现一个高度自适应的UILable思路:UILabel初始化之后,先不要设置他的宽度和高度,等到设置好text属性和font属性之后,根据text的长度以及font的大小来计算UILabel控件的高度//实现一个高度自适应的uilabelUILabel*label2=[[UILabelalloc]init];label2.text=@"xxx......
  • 类加载的时机
    类加载的时机类的生命周期类从被加载到虚拟机内存开始,到卸载出内存为止,它的整个生命周期包括以下7个阶段:加载验证准备解析初始化使用卸载验证、准备、解析3个阶段统称为连接。加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须按照这种......
  • IOS下的微信H5页面的底部前进后退横栏如何隐藏
    header里增加<metaname="viewport"content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover"/>重点:viewport-fit=cover加上后向下滚动时自动隐藏前进后退横栏,一定程度上解决了遮挡底部的问题,向上滚动后又会出现......
  • Vue项目卡顿慢加载?这些优化技巧告诉你!
    前端开发是一个快速发展的领域,每天都会涌现出新的技术和工具。在实现功能的同时,开发人员面临着许多挑战如代码可维护性,加载时间,访问速度,构建速度等问题。这些挑战可能直接影响网站的性能和用户体验,需要采取一些优化措施来改善问题。在本文中,我们将探讨一些前端项目优化的具体措施......
  • 深入学习 Java 类加载机制
    博主介绍:✌博主从事应用安全和大数据领域,有8年研发经验,5年面试官经验,Java技术专家,阿里云专家博主,华为云云享专家✌......
  • 使用numpy实现bert模型,使用hugging face 或pytorch训练模型,保存参数为numpy格式,然后使
     之前分别用numpy实现了mlp,cnn,lstm,这次搞一个大一点的模型bert,纯numpy实现,最重要的是可在树莓派上或其他不能安装pytorch的板子上运行,推理数据本次模型是随便在huggingface上找的一个新闻评论的模型,7分类看这些模型参数,这并不重要,模型占硬盘空间都要400+Mbert.embeddings.w......
  • [代码]如何从文件加载XML(LINQ to XML)
    此示例代码演示如何使用XElement.Load()方法从文件中加载XML。示例代码usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Xml.Linq;namespaceDemo02Ex01{classProgram{staticvoidMain(string[]arg......