目录
第一节:UIPickerView、UIPickerViewDataSource、UIPickerViewDelegate
归档解档(NSKeyedArchive、NSKeyedUnArchive)
第二十六节:加载webview(UIWebView、UIWebDelegate)
第一节: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
右键连线

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



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

事件传递

检索规则:先看本身View 是否可以交互,如果可以,就从后往前遍历它的子view,查看当前点击的点是否在该View里,如果查询结束后,都不在该View里,就返回它自身
第一响应者就是谁执行touch begin 的控件
Button 注册了事件,找到它之后,就直接执行注册事件了,不会再传递了
第二十节:手势解锁案例
storyboard 也是一个xib,一会调用awakeFromNib

default color 是没有颜色,clean color 是透明的颜色

第二十一节:动画、CALayer、手势识别
手势识别








手势冲突
设置代理


CALayer



lay 里面的属性,凡是带Animatable 的,都是可动画属性,也就是隐式动画




CADisplayLink


CoreAnimation
核心动画和隐式动画不是一个东西
组动画:多个动画共存
转场动画

判断核心动画是否存在

还一个问题是核心动画,是layer转了,但是frame没有转,所以转完之后,还要设置frame,用延时

第二十二节:UIDynamic


重力学行为
碰撞行为

用这个方法替代在storyboard 中指定UIview


甩行为

附着行为
block 里面要引用自己,要使用weak,否则会引起循环引用

推行为

动力学属性


判断点是否在一个路径内

第二十三节:图片截取

核心动画默认回到原来的位置,设置为no

第二十四节:彩票
获取storyboard





默认创建的image View 是没有开启用户交互的,所以要想交互,要开启它的交互

把自定义tabbar 添加到系统的tabbar 里面,就可以关闭了该tabbar了

设置navigation bar 不为半透明

序列帧图片动画

九宫格切图


字符串转类型

字符串转方法+忽略警告

创建一个看不见的文本框 弹出键盘

设置 toolbar
设置toolbar 的时候,要设置一下宽度

获取当前点击的table cell

NSJsonSerialization
key window 切换rootcontroller

第二十五节:UICollectionView

第二十六节:加载webview(UIWebView、UIWebDelegate)


添加这个key,让app 可以打开http的地址

加载js代码

第二十七节:本地化
应用名字本地化

添加系统语言的支持

新建一个string 的文件


StoryBoard本地化


代码中字符串本地化
本地化文件的名字是固定的Localizable.strings

本地化文件的名字不是固定的


打电话

发短信

跳转到appstore

本地是否有某个应用

获取应用信息
框架 ios-system-service,github 上
字典转字符串

iOS开发指南:视图组件、数据管理与本地化,











932

被折叠的 条评论
为什么被折叠?



