ios UI 基础开发二

第一节:UIPickerView、UIPickerViewDataSource、UIPickerViewDelegate

设置约束,如果要设置两个兄弟的约束,可以按住option键,用鼠标右键把a拖到b上面,表示a按照b来对齐

生成随机数

如果后面列的数据,依赖前面的数据,需要把前面选择的列的数据,保存下来,因为不保存,后面更新的时候,前面的列并没有变化,会造成索引越界

添加UIView
第二节:显示方法的注释快捷方法

光标定位到方法上,按一下esc键,会显示注释

第三节:全局断点,会在发生崩溃的地方断点
第四节:UIDatePicker

为什么用weak和 strong

设置locale 语言

第五节:NSDateFormatter
第六节:UIToolBar

系统封装的一个view,里面是UIToolbarItem

第七节:plist 属性

第八节:pch文件
第九节:UIApplicaiton

keywindow 是应用的主界面

这个key 表示状态栏的显示不交给View controller 管理了,而是交给应用程序

启动过程

如果要保存应用数据,应该在enter background的时候保存,因为如果先进入后台,过一会再kil app,获取不到teminate 事件

加载自定义controller

通过代码加载

通过storyboard 加载

通过xib创建

self.view 的懒加载

就是调用 self loadView 方法,可以重写该方法

第十节:UIWindow

继承自UIView

第十一节:UINavigationController

通过storyboard 设置

在storyboard中拖一个navigation controller,然后右键,设置root controller

上面有一个navigation item 控件

连线push 和 show 的区别

show 不会添加navigation item

右键连线

只有样式上的区别,一个字没加粗,一个加粗了

View的生命周期

删除的时候是倒着来,比如栈的结构为 红->绿->蓝 ,如果从红->蓝,销毁的时候,先销毁绿,在销毁红,因为蓝的强指针先没了

第十二节:Segue
自动型
手动型

第十三节:数据存储

finder ->前往->前往文件夹

simpholder2.app 快捷前往沙盒工具

plist 存储

自定义对象不能存到plist 文件,因为它没有writeToFile 方法

偏好设置(NSUserDefaults)
归档解档(NSKeyedArchive、NSKeyedUnArchive)

它是二进制的文件,归档解档的对象要遵循NSCoding协议,文件路径还是在Document路径

归档的时候,要告诉归档那些属性,解档的时候也是要告诉解档哪些属性

temp目录:NSTemporaryDirectory

第十四节:UITabBarController

高度49

第十五节:图片保持图片的长宽

选中ui view,edit->size to fit (command =)

第十六节:Modal

两个界面之间有逻辑关系,用push,没关系用modal

第十七节:Quartz2d
CGContextRef

能用oc的就用oc

draw rect
画图 矩形、圆角矩形、椭圆、圆弧

样式
渲染样式

填充且描边

奇偶填充规则
非零绕数规则
画图 饼图、柱状图、进度条

第十八节:矩阵操作:旋转、缩放、平移

在把路径放到上下文之前进行操作才有效,是对上下文进行的操作

图形上下文栈

save 表示入栈,restore表示出栈

内存管理 (CGPath的释放)
绘制文字

attribute 就是 nsattributename 里面的字符串

绘制图片
模拟image View

这种方式创建的image 是图片的默认大小,模拟image view 就是上面的UIimage 的draw方法

图片裁剪

裁剪的是图片,并不是上下文

图形上下文
保存图片

裁切image
image 保存到相册
屏幕截图

第十九节:触摸事件

可以通过这俩值,获取偏移量

NSSet
多点触摸

按住option键 拖鼠标可以模拟多点触摸,默认View 没开启多点触控,需要开启

view 的这个属性clip subview 类似于Mask

事件传递
相关推荐
特立独行的猫a9 小时前
用仓颉写一个 Tauri:IPC 的每次往返实现原理(web层到仓颉层的触发过程)
前端·ui·harmonyos·tauri·鸿蒙·仓颉
传奇开心果编程9 小时前
【现代声明式UI学与练】第1课 从命令式UI到声明式UI
学习·flutter·ui·swiftui·react·android jetpack
可乐鸡翅yeah_11 小时前
fmp4 碎片 MP4 格式 HLS 流,和传统 TS 分片有什么不一样
开发语言·javascript·ios·音视频·safari·m3u8·m3u8在线播放
Cx330❀13 小时前
【Qt 进阶指南】详解 Qt 常用标准对话框与主窗口组件架构
开发语言·qt·ui·性能优化·架构·图形渲染
传奇开心果编程14 小时前
【ArkUI进阶练中学】第5课:编译优化与包体积进
学习·ui·华为·harmonyos
传奇开心果编程15 小时前
【ArkUI进阶练中学】第10课:架构设计与工程化最佳实践
学习·ui·华为·harmonyos
茶底世界之下15 小时前
为什么高精度透明图片上传到 Metal 时,必须把“拷贝像素”与“混合合成”分开
ios
老李IT笔记15 小时前
iOS 27 更新延迟只能给 1 到 90 天:两个参数怎么配,配错了会发生什么
ios·智能手机
传奇开心果编程16 小时前
【ArkUI提高练中学】第7课:性能调优与稳定性治理
学习·ui·华为·harmonyos
Helix25016 小时前
移动端浏览器内核之争:iOS 为何强制使用 WebKit?
ios·safari·webkit·wkwebview·浏览器内核·blink·ios浏览器内核