import UIKit

class ViewController: UIViewController {

override func viewDidLoad() {

super.viewDidLoad()

let imageView = UIImageView.init(image: UIImage.init(named: "1"))

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

self.view.addSubview(imageView)

// 从文件目录中获取图片

/*

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

let newImage = UIImage(contentsOfFile: imagePath!)

let newImageView = UIImageView(image:newImage)

self.view.addSubview(newImageView)

*/

// 从网络地址获取图片

//定义URL对象

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

//从网络获取数据流

if let data = try? Data(contentsOf: url!) {

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

let newImage = UIImage(data: data)

let imageView2 = UIImageView(image:newImage);

imageView2.frame = CGRect.init(x: 10, y: 200, width: 300, height: 150)

self.view.addSubview(imageView2)

}else{

print("无法获取图片!")

}

// 保持图片比例

imageView.contentMode = .scaleAspectFit

}

override func didReceiveMemoryWarning() {

super.didReceiveMemoryWarning()

// Dispose of any resources that can be recreated.

}

}

swift 实践- 09 -- UIImageVIew的更多相关文章

  1. Swift动态添加UIImageView并添加事件

    Swift动态添加UIImageView并添加事件: 1. 创建UIImageView实例,并进行初始化 2. 设置UIImageView的用户交互属性userInteractionEnabled为T ...

  2. Swift基础之UIImageView(都是2.2版本)

    //设置全局变量,将下面的替换即可     //var myImgView = UIImageView();     //系统生成的viewDidLoad()方法     override func ...

  3. swift 实践- 14 -- UIScrollView

    import UIKit class ViewController: UIViewController ,UIScrollViewDelegate{ override func viewDidLoad ...

  4. swift 实践- 08 -- UISegmentedControl

    import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoa ...

  5. swift 实践- 02 -- 自定义cell 的简单使用

    import UIKit class MyTableViewCell: UITableViewCell { var imageV: UIImageView? var titleLabel: UILab ...

  6. Swift 学习- 09 -- 枚举

    // 递归枚举 // 美家居为一组相关的值定义了一个共同的类型, 使你可以在代码中以类型安全的的方式使用这些值. // 如果你熟悉C语言, 你会知道在C语言中, 枚举会为一组整型值分配相关联的名称, ...

  7. 学习swift从青铜到王者之swift属性09

    1.结构体常量和类常量的存储属性 let p1 = Person1() //p1.age = 88 不允许修改 //p11.name = "yhx1" 不允许修改 var p11 ...

  8. Swift 实践之UIWebView

    1.选中工程,点击右键,New File>在iOS下选中Othe>Empty,生成一个.js的脚本文件,将代码粘贴过去保存; var script = document.createEle ...

  9. swift 实践- 13 -- UIStepper

    import UIKit class ViewController: UIViewController { var stepper: UIStepper! var label: UILabel! ov ...

随机推荐

  1. RIPS PHP源码静态分析(转)

    0x00背景 对于PHP代码审计的需求,我们当然需要一款好的php代码审计分析工具--RIPS,它使用了静态分析技术,能够自动化地挖掘PHP源代码潜在的安全漏洞如XSS ,sql注入,敏感信息泄漏,文 ...

  2. Redis + keepalived 高可用行配置检测脚本

    Redis 在生产配置中:除redis集群.哨兵模式之外:主从模式还是比较普遍的. 配置 redis 多主从:由 keepalived 做 VIP 地址漂移.可以实现redis的高可用性. keepa ...

  3. pyqt5模块介绍

    python各种库介绍  https://wiki.python.org/moin/GuiProgramming PyQt5.QtWidgets     包含控件 PyQt5.QtGui      图 ...

  4. 5-23 CSS知识的补充

    1,后代选择器 使用空格表示后代选择器.顾名思义,父元素的后代(包括儿子,孙子,重孙子). <!DOCTYPE html> <html lang="en"> ...

  5. 将web项目导入到eclipse中常见错误

     将web项目导入到eclipse中常见错误  错误1:string cannot be resolved to a type  原因:这种情况一般是因为你的JDK版本没有设置好,或者设置的有不一致的 ...

  6. j假设程序需要要一个int烈血的刀变量来保存1英里所包含的步数(5280)为该变量编写一条声明语句。

    j假设程序需要要一个int烈血的刀变量来保存1英里所包含的步数(5280)为该变量编写一条声明语句. final intFT_PER_MILE =5280

  7. MySQL创建数据库指定字符集

    CREATE DATABASE IF NOT EXISTS dbname DEFAULT CHARSET utf8;

  8. 【Convex Optimization (by Boyd) 学习笔记】Chapter 2 - Convex sets(1) 仿射集&凸集

    I. 仿射凸集(Affine and convex sets) 1. 线与线段 假设\(R^n\)空间内两点\(x_1,x_2\, (x_1≠x_2)\),那么\(y=\theta x_1+(1-\t ...

  9. 为什么可逆矩阵又叫“非奇异矩阵(non-singular matrix)”?

    最近在捡回之前的线性代数知识,在复习可逆矩阵的时候,发现有的书上把可逆矩阵又称为非奇异矩阵,乍一看名字完全不知所云,仔细一分析,还是不明白.要想弄明白,还是得从英文入手,下面的解释主要从这里得来的Wh ...

  10. PHP Tp5.0 PHPExcel 导出操作

    1.导出 excel 方法 2.导出方法(简单快速)