IOS 了解新技术(UIPresentationController,屏幕适配)

1.了解有什么新技术
1> 苹果API文档 - General - Guides - iOSx API Diffs
2> 观看WWDC会议视频


2.如何使用新技术


1> 自己根据API文档尝试新的类和新的方法
2> 百度:iOSx开发
3> 苹果API文档 - xxx - SampleCode
* 比如Cocoa Touch Layer - UIKit
4> github网站:搜索新技术新代码, 比如搜索Presentation


3.推荐学习网站


1> 个人博客:技术大牛
唐巧:http://blog.devtang.com/blog/archives/
王巍:http://www.onevcat.com
破船之家:http://beyondvincent.com
池建强:http://www.cnblogs.com/chijianqiang/
2> 社区博客
CocoaChina:http://www.cocoachina.com
Code4App:http://www.code4app.com
伯乐在线:http://blog.jobbole.com

4.UIPresentationController


1> 管理所有Modal出来的控制器


2> 管理所有通过- (void)presentViewController:(UIViewController *)viewControllerToPresent animated: (BOOL)flag completion:(void (^)(void))completion方法显示出来的控制器


3> 管理监听切换控制器的过程


4> presentingViewController:后面的控制器


5> presentedViewController:前面的控制器


6> presentedView:前面的控制器的view


5.屏幕适配


1> 发展历程
代码计算frame -> autoreszing(父控件和子控件的关系) -> autolayout(任何控件都可以产生关系) -> sizeclass

2> sizeclass
* 仅仅是对屏幕进行了分类, 真正排布UI元素还得使用autolayout
* 不再有横竖屏的概念, 只有屏幕尺寸的概念
* 不再有具体尺寸的概念, 只有抽象尺寸的概念
* 把宽度和高度各分为3种情况
1) Compact : 紧凑(小)
2) Any : 任意
3) Regular : 宽松(大)
4) 符号代表
- : Compact
* : Any
+ : Regular
5) 继承性
* * : 其它8种情况都会继承
* - : 会被- - + -继承
+ * : 会被+ - + +继承
6) sizeclass和autolayout的作用
sizeclass:仅仅是对屏幕进行了分类
autolayout:对屏幕中各种元素进行约束(位置尺寸)


原文地址:https://www.cnblogs.com/liuwj/p/7029512.html