ios UI 基础开发二

目录

第一节:UIPickerView、UIPickerViewDataSource、UIPickerViewDelegate

生成随机数

添加UIView

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

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

第四节:UIDatePicker

​为什么用weak和 strong

第五节:NSDateFormatter

第六节:UIToolBar

第七节:plist 属性

第八节:pch文件

第九节:UIApplicaiton

启动过程

加载自定义controller

self.view 的懒加载

第十节:UIWindow

第十一节:UINavigationController

通过storyboard 设置

连线push 和 show 的区别

View的生命周期

第十二节:Segue

自动型

​手动型

第十三节:数据存储

plist 存储

偏好设置(NSUserDefaults)

归档解档(NSKeyedArchive、NSKeyedUnArchive)

第十四节:UITabBarController

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

第十六节:Modal

第十七节:Quartz2d

CGContextRef

draw rect

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

样式

渲染样式

奇偶填充规则

非零绕数规则

画图 饼图、柱状图、进度条

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

图形上下文栈

内存管理 (CGPath的释放)

绘制文字

绘制图片

模拟image View 

图片裁剪

图形上下文

保存图片

裁切image

image 保存到相册

屏幕截图

第十九节:触摸事件 

NSSet

多点触摸

事件传递

第二十节:手势解锁案例

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

手势识别

手势冲突

CALayer

CoreAnimation

第二十二节:UIDynamic

重力学行为

​碰撞行为

​甩行为

附着行为

推行为

动力学属性

判断点是否在一个路径内

第二十三节:图片截取

第二十四节:彩票

获取storyboard​

设置navigation bar 不为半透明

序列帧图片动画

九宫格切图

字符串转类型

字符串转方法+忽略警告

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

设置 toolbar

获取当前点击的table cell

NSJsonSerialization

key window 切换rootcontroller

第二十五节:UICollectionView

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

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

加载js代码

第二十七节:应用名字国际化

storyboard 的国际化

代码国际化,依赖系统语言

代码国际化,不依赖系统语言

打电话

发短信

跳转到appstore

本地是否有某个应用

获取应用信息

字典转字符串


第一节: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 

 

事件传递

检索规则:先看本身View 是否可以交互,如果可以,就从后往前遍历它的子view,查看当前点击的点是否在该View里,如果查询结束后,都不在该View里,就返回它自身

第一响应者就是谁执行touch begin 的控件

Button 注册了事件,找到它之后,就直接执行注册事件了,不会再传递了

第二十节:手势解锁案例

storyboard 也是一个xib,一会调用awakeFromNib

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

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

 

 

手势冲突

设置代理

CALayer

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

 

 

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 上

字典转字符串

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TO_ZRG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值