iOS开发基础知识
来源:互联网 发布:淘宝右侧品牌精选 编辑:程序博客网 时间:2024/06/07 11:11
CALayer与UIView的关系
在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮、一个文本标签、一个文本输入框、一个图标等等,这些都是UIView。
其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层:
在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层。
@property(nonatomic,readonly,retain) CALayer *layer;
当UIView需要显示到屏幕上时,会调用drawRect:方法进行绘图,并且会将所有内容绘制在自己的图层上,绘图完毕后,系统会将图层拷贝到屏幕上,于是就完成了UIView的显示。
换句话说,UIView本身不具备显示的功能,是它内部的层才有显示功能。
因此,通过调节CALayer对象,可以很方便的调整UIView的一些外观属性。
CALayer的基本属性
宽度和高度:
@property CGRect bounds;
位置(默认指中点,具体由anchorPoint决定):
@property CGPoint position;
锚点(x,y的范围都是0-1),决定了position的含义:
@property CGPoint anchorPoint;
背景颜色(CGColorRef类型):
@property CGColorRef backgroundColor;
形变属性:
@property CATransform3D transform;
position和anchorPoint的作用
@property CGPoint position;:
用来设置CALayer在父层中的位置
以父层的左上角为原点(0, 0)
@property CGPoint anchorPoint;:
称为“定位点”、“锚点”,
决定着CALayer身上的哪个点会在position属性所指的位置。
以自己的左上角为原点(0, 0),
它的x、y取值范围都是0~1,默认值为中心点(0.5, 0.5)
anchorPoint和position的关系举例:
假如锚点anchorPoint为默认值即中点(0.5,0.5),而该层的position设置为(0,0)即为父层的左上点,那么该层在父层中只会看到四分之一的部分。
0 0
- IOS开发基础知识要点
- ios开发一些基础知识
- 【IOS】开发基础知识
- IOS开发基础知识要点
- iOS开发基础知识
- iOS开发基础知识总结
- ios开发基础知识
- iOS-AppleWatch开发基础知识
- iOS开发基础知识
- iOS应用开发----必备基础知识
- iOS应用开发----必备基础知识
- IOS 开发学习一 基础知识
- iOS GPS定位开发基础知识
- IOS--开发基础知识
- IOS开发基础知识--碎片整理
- ios开发学习 --基础知识--系列教程
- IOS开发系列--C语言之基础知识
- iOS开发基础知识:Core Animation(核心动画)
- dedecms开发电影网-第一节
- Java Web基础知识
- 从JDK源码角度看并发竞争的超时
- 数据读取问题。导师们快来
- 谷歌大脑深度学习
- iOS开发基础知识
- Temasys插件:将WebRTC带入Internet Explorer和Apple Safari
- 微信推出小程序码
- 程序员,如何从平庸走向理想?
- 91. Decode Ways
- [leetCode刷题笔记]387. First Unique Character in a String
- RFID实验一总结
- 大型网站架构之分布式消息队列
- 拍照扫描银行卡信息识别SDK