重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

ios开发图片显示,ios图片图标

ios中如何在屏幕上显示一张图片

首先要在项目目录下导入一张图片,如 testImage@2x.png

创新互联是一家专业从事网站建设、网络营销、微信小程序、网站运营为一体的建站企业;在网站建设告别千篇一律,告别似曾相识,这一次我们重新定义网站建设,让您的网站别具一格。成都响应式网站建设公司,实现全网营销!一站适应多终端,一样的建站,不一样的体验!

然后,在viewController.view上,添加一个子视图UIImageView imageVeiw.

[self.view addSubview:imageVeiw];

然后使用图片文件生成图片对象image

UIImage *image = [UIImage imageNamed:@"testImage"];//不需要包含后缀'@2x.png'

然后,将图片加载到imageView中:

[imageVeiw setImage:image];

至此,就能在屏幕上显示一张图片了。

iOS开发中SDWebImage加载图片不显示(图片地址在浏览器中能显示)

一个图片的地址放在浏览中能正常加载出来,但使用SDWebImage加载该图片地址的时候却加载不出来。

之前遇到这个问题有两种情况

浏览器在加载两类图片的时候能够对图片的地址进行处理,然后正常加载出来。

然而SDWebImage却没有对图片地址进行像浏览器那样的处理,这时需要我们自己对图片地址进行处理。

对于第一种图片地址我们需要对汉字进行转码,方法:

对于第二种图片地址我们需要将反斜杠转成斜杠,方法:

第二种处理方法是用"/"替换地址中的"\",然而字符串"\"不能直接使用,需要使用\\,因为\后带一些字符是转义字符。

iOS 开发-UIImageViews(图片)的使用

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"bgImage"]]; 

创建并设置默认图, 也可以

UIImageView*imageView = [[UIImageView alloc] init];

imageView.image= [UIImageimageNamed:@"bgImage"];

还可以这样先设置imageview的大, 在设置图片

UIImageView*imageView = [[UIImageView alloc] initWithFrame:(CGRectMake(0,144,SCREEN_Width,50))];

imageView.image= [UIImageimageNamed:@"bgImage"];

由此可看imageview的frame可以这样设置

imageView.frame=CGRectMake(0,144,SCREEN_Width,50);

通常我们使用的的imageview都会添加圆角边框

imageView.layer.masksToBounds = YES;

imageView.layer.cornerRadius=25;

imageView.layer.borderColor = [UIColor blueColor].CGColor;

imageView.layer.borderWidth=1;

这个圆角和边框像view和label以及button的设置方式都是一样的 当然imageview也一样

imageView.backgroundColor= [UIColorclearColor]; 图片设置背景颜色, 我通常使用clearColor  透明

 imageView.userInteractionEnabled = YES; 图片设置成可交互, 设置为NO则不能交互

[self.viewaddSubview: imageView]; 添加视图也可叫做显示视图

设置图片内容的布局方式 imageView.contentMode

这个属性是用来设置图片的显示方式,如居中、居右,是否缩放等

imageView.contentMode = UIViewContentModeScaleAspectFit;

UIViewContentMode contentMode枚举类型

    (1)  UIViewContentModeScaleToFill;     默认,对图片进行拉伸处理(不是按比例),是充满bouns

  (2)  UIViewContentModeScaleAspectFit;     按原图比例进行拉伸,是图片完全展示在bouns中

    (3)  UIViewContentModeScaleAspectFill;     按原图比例填充,使图片展示在bouns中,可能只显示部分

    (4)  UIViewContentModeRedraw;     重划边界变化(重设 - setNeedsDisplay)

    (5)  UIViewContentModeCenter;     图片显示在imageview的正中间,原图大小

    (6)  UIViewContentModeTop;     图片显示在imageview的上部,原图大小

    (7)  UIViewContentModeBottom;     图片显示在imageview的下部,原图大小

    (8)  UIViewContentModeLeft;     图片显示在imageview的左部,原图大小

    (9)  UIViewContentModeRight;     图片显示在imageview的右部,原图大小

    (10)  UIViewContentModeTopLeft;     图片显示在imageview的左上部,原图大小

    (11)  UIViewContentModeTopRight;     图片显示在imageview的右上部,原图大小

    (12)  UIViewContentModeBottomLeft;     图片显示在imageview的左下部,原图大小

    (13)  UIViewContentModeBottomRight;     图片显示在imageview的右下部,原图大小

imageView.alpha = 1.0;    设置图片透明度

   NSString *path1 = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"jpg"];

   NSString *path2 = [[NSBundle mainBundle] pathForResource:@"2" ofType:@"jpg"];

   NSString *path3 = [[NSBundle mainBundle] pathForResource:@"3" ofType:@"jpg"];

   imageView.animationImages = @[[UIImage imageWithContentsOfFile:path1],[UIImage imageWithContentsOfFile:path2],[UIImage imageWithContentsOfFile:path3]];

   imageView.animationDuration = 5.0f;    设置循环一次的时间

   imageView.animationRepeatCount = 0;    // 设置循环次数(0为无线循环)

   [imageView startAnimating];            // 开始动画

   [imageView stopAnimating];              // 停止动画

NSData *imageData = [NSData dataWithContentsOfFile:path];

UIImage *image4 = [UIImage imageWithData:imageData];

NSString *path = [[NSBundle mainBundle] pathForResource:@"1" ofType:@"jpg"];

UIImage *image2 = [UIImage imageWithContentsOfFile:path];

ImageView.hidden = NO;    隐藏或者显示图片 YES为隐藏

[ImageView sizeToFit];    将图片尺寸调整为与内容图片相同

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapImageView:)]; // 设置手势

[ImageView addGestureRecognizer:singleTap]; // 给图片添加手势

iOS14 Widget小组件开发实践5——网络图片的加载

以上都是使用 Image 加载本地图片资源,但是 SwiftUI 中的 Image 没有提供直接加载 URL 方式的图片显示,那么如何在 SwiftUI 中让 Image 加载网络图片呢,可以采用异步加载网络图片数据,由 data 转换成 UIimage ,再给 Image 展示

但是这种异步加载图片的方式在 Widget 中却失效了, Image 显示不了图片。

在 TimelineProvider 的 getTimeline 中 completion(timeline) 执行完之后,不再支持图片的异步回调了,所以必须在数据请求回来的处理中采用同步方式,将图片的 data 获取,转换成 UIimage ,在赋值给 Image 展示。

接下里给 iOS14 Widget小组件开发实践2——自定义Widget 里搭建的古诗视图增加一个网络封面图片显示,效果如下:

因为这个免费的 API 接口没有返回图片封面数据,所以就自己网上找个图片用来测试。关于图片请求的时机,这里我是将它放在了 API 接口回调后处理 json 转 model 的这一步:

最后在给 PoetryWidgetView 布局界面:

SwitUI-实现URL图片显示


分享名称:ios开发图片显示,ios图片图标
文章网址:http://cqcxhl.cn/article/dsgjgpj.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP