• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

[Swift实际操作]七、常见概念-(3)尺寸CGSize的使用详解

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!!

本文将为你演示CGSize的使用

 

首先导入需要使用到的两个框架

1 import UIKit
2 import QuartzCore

定义一个尺寸对象,尺寸对象包含宽度和和高度两个参数。
从右侧的结果可以看出,此时该尺寸对象的宽度和高度都是0

let zeroSize = CGSize.zero

初始化另一个尺寸对象,并设置它的宽度为20,高度为10

let size = CGSize(width: 20, height: 10)

查看该尺寸对象的高度和宽度的数值

1 size.width
2 size.height

从输出的尺寸对象的字符描述可以看出,
尺寸对象由大括号包括,
并由宽度和高度两个值组合而成

size.debugDescription

通过仿射变换,可以对尺寸对象进行变形。
在此初始化一个仿射变换对象,并设置其值为原始值

let transform: CGAffineTransform = CGAffineTransform.identity

将仿射变换对象在水平和垂直方向上,各平移10点的距离

let moveTransform = transform.translatedBy(x: 10, y: 10)

然后给尺寸对象应用平移后的仿射变换。
从右侧输出的结果可以看出,尺寸对象的宽度和高度没有发生变化。

let secondSize = size.applying(moveTransform)

接着将仿射变换对象在水平方向上放大两倍,垂直方向上保持不变

let rotateTransform = moveTransform.scaledBy(x: 2.0, y: 1.0)

然后给尺寸对象应用缩放后的仿射变换。
从右侧输出的结果可以看出,
尺寸对象的宽度增加至两倍大小,而高度没有发生变化

let thirdSize = size.applying(rotateTransform)

判断两个尺寸大小是否相同,由于第三个尺寸对象是经常缩放变形的,
所以它们的尺寸并不相同。

thirdSize.equalTo(size)

判断两个尺寸大小是否相同

thirdSize.equalTo(CGSize(width: 40, height: 10))

尺寸对象和字符串也是可以相互转换的。通过系统提供的函数,
可以很方便地将格式化后的字符串,转化为尺寸对象。

let fifthSize = CGSizeFromString("{200,100}")

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Swift中Tuple的比较发布时间:2022-07-13
下一篇:
[Swift]LeetCode483.最小好进制|SmallestGoodBase发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap