swift 判断html图片,Swift - 图像控件(UIImageView)的用法

本文详细介绍了如何在iOS应用中使用UIImageView从本地文件、网络URL和动画效果进行图片加载,并探讨了如何保持图片比例不失真。涵盖内容包括UIImageView的用法、图片资源管理、网络请求与图像缓存、以及动画实现技巧。
摘要由CSDN通过智能技术生成

546a5fe8d5b4db2f77b50ca5cdf88c50.png

let imageView = UIImageView(image:UIImage(named:"image1"))

imageView.frame = CGRect(x:10, y:30, width:300, height:150)

self.view.addSubview(imageView)

2,改变图片

imageView.image = UIImage(named:"icon2")

3,从文件目录中获取图片

let path = Bundle.main.path(forResource: "ball", ofType: "png")

let newImage = UIImage(contentsOfFile: path!)

let imageView = UIImageView(image:newImage)

self.view.addSubview(imageView)

4,从网络地址获取图片

//定义URL对象

let url = URL(string: "http://hangge.com/blog/images/logo.png")

//从网络获取数据流

let data = try! Data(contentsOf: url!)

//通过数据流初始化图片

let newImage = UIImage(data: data)

let imageView = UIImageView(image:newImage);

self.view.addSubview(imageView)

5,使用图像控件实现动画播放

UIImageView 中提供了存储多张图片来创建动画的功能,具体做法是,在 animationImages 属性中设置一个图片数组,然后使用 startAnimating 方法开始动画,最后用 stopAnimating 方法停止动画。同时,使用 animationDuration 属性中可以设置动画每帧切换的速度(秒)。

import UIKit

class ViewController: UIViewController {

var imageView:UIImageView!

override func viewDidLoad() {

super.viewDidLoad()

imageView = UIImageView()

imageView.frame=CGRect(x:20, y:20, width:100, height:100)

//设置动画图片

imageView.animationImages = [UIImage(named:"icon1")!,UIImage(named:"icon2")!]

//设置每隔0.5秒变化一次

imageView.animationDuration=0.5

self.view.addSubview(imageView)

}

override func viewWillAppear(_ animated: Bool) {

super.viewWillAppear(animated)

imageView.startAnimating()

}

override func viewWillDisappear(_ animated: Bool) {

super.viewWillAppear(animated)

imageView.stopAnimating()

}

override func didReceiveMemoryWarning() {

super.didReceiveMemoryWarning()

}

}

6,保持图片比例

默认 UIImageView 会拉伸图片使其占满整个 UIImageView,如果不想让图片变形,可以将 ContentMode 设置为 Aspect Fit。

imageView.contentMode = .scaleAspectFit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值