iOS篇 - iOS迭代
1 - Objective-C 起初不支持垃圾回收机制,但在 Objective-C 2.0 中后也提供了垃圾回收机制,不过 iOS 在移动终端设备中并不支持垃圾回收机制。Xcode 4.2 起开始支持自动释放功能(ARC 机制),Xcode 5.0 及其以后的版本中,系统缺省的工程模板是设置生 ARC
2 - @synthesize 在 Xcode 4.5 之后会在内部自动生成,不需要手动添加,其作用如下
① 通知编译器自动为我们创建设置器和访问器
② 生成私有的带下划线的成员变量
3 - -drain 方法只适用于 Mac OS X 10.4 以及以上版本,而 -release 方法适用于 Mac OS 所有版本
4 - _weak 概念的新特性是从 iOS 5 / Mac OS X 10.7 开始导入的
5 - 在 OC 2.0 中,提供点语法来访问属性,但是之前我们使用 KVC 来访问
6 - block 是苹果最推崇的语法,iOS 4.0 之后的类都添加了 block 支持,block 通常当参数来使用
7 - 在 iOS 8.0 之后,UIAlertView 和 UIActionSheet 这两个控件被 UIAlertController 代替,以一种模块化替换的方式来代替这两这两个控件的功能和作用
8 - 在 UI 外观上,自 iOS 7 开始,发生了重大变化:由以线条为主,倾向于扁平化转变为更着重于体现应用程序的内容。iOS 7 之前的 UI 外观则以虚拟化为主,注重立体、阴影的配搭,无形中降低了应用程序内容的地位
9 - iOS 6.0 之后版本
① 采用 info.plist 的 UISupportedInterfaceOrientations 来控制方向
② 若直接在 UIwindow 中加载视图,该方法可以脱离 info.plist 的控制,shouldAutorotate 来自定义方向
③ 若使用 rootViewController 添加 shouldAutorotate 方法,会受到 info.plist 的限制
以上方法都受限于顶层视图控制,如果要在子视图控制器中添加旋转效果,则需要在顶层视图控制器中开启 shouldAutorotate 方法
10 - Autoreleasepool:在 iOS 5 之后不再推荐使用 NSAutoreleasePool 类,而采用 @autoreleasepool 进行替代
11 - 在 xcode 7 以后一定要有根视图,否则程序编译报错且运行崩溃
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)