美文网首页
斯坦福公开课Swift笔记5:Drawing

斯坦福公开课Swift笔记5:Drawing

作者: CyberDunk1997 | 来源:发表于2020-07-06 17:09 被阅读0次

https://www.bilibili.com/video/BV1rb411C7eN?p=6

1 Any

1.1 Any出现的场景:

  • 字典中可能出现[Key:Any]
  • 方法中作为参数出现,func prepare(for segue: UIStortboard , sender: Any? ) , 这里的any可以指UIButton,tableviewcell等

1.2 as 类型转换

  • as?会将any类型转换成其他类型,如果无法转换,会返回nil


    as类型转换
  • as不仅仅针对Any,还可以将向下转换成自己的子类


    向下转换

2 NSObject,NSNumber,Date,Data

  • NSObject是所有类的父类
  • NSNumber是所有数据的总类
  • Date是表示时间的数据
  • Data是一包比特数据,用来存储和传输原始数据


    image.png

3 View

  • init(frame:CGRect) // 用代码初始化UIView
  • init(coder:NSCoder) // 用storyboard始化UIView
  • init(coder:NSCoder)是UIView协议中的方法,必须实现,(protocol中的init方法必须被实现,required)


    初始化UIView

3.1

  • awakeFromNib()当UIView从storyboard中被创建,在完成初始化后会立刻调用这个方法
awakeFromNib.png

3.2

  • bounds是绝对坐标和大小,frame是相对父视图的坐标和大小

3.3

bounds vs frame
  • bounds.size 和 frame.size 不一定一样 ,bounds和frame的中心坐标也可能不一样,因为图片可以旋转

3.4

drawing

3.5 layer

layer

4 code

image.png

case where

image.png

相关文章

网友评论

      本文标题:斯坦福公开课Swift笔记5:Drawing

      本文链接:https://www.haomeiwen.com/subject/kpnwqktx.html