美文网首页
UIWindow ,UIScreen

UIWindow ,UIScreen

作者: 雨雪霏霏why | 来源:发表于2016-01-05 16:20 被阅读150次

1,UIScreen一般也只是用来获取屏幕大小

CGrect screenBounds = [[UIScreen mainScreen] bounds];//返回的是带有状态栏的Rect (0.0,0.0,320.0,480.0)

CGRect viewBounds = [[UIScreen mainScreen] applicationFrame];//不包含状态栏的Rect(0.0,20.0,320.0,480.0)

一、UIWindow是一种特殊的UIView,通常在一个程序中只会有一个UIWindow,但可以手动创建多个UIWindow,同时加到程序里面。UIWindow在程序中主要起到三个作用:

1、作为容器,包含app所要显示的所有视图

2、传递触摸消息到程序中view和其他对象

3、与UIViewController协同工作,方便完成设备方向旋转的支持

二、通常我们可以采取两种方法将view添加到UIWindow中:

1、addSubview

直接将view通过addSubview方式添加到window中,程序负责维护view的生命周期以及刷新,但是并不会为去理会view对应的ViewController,因此采用这种方法将view添加到window以后,我们还要保持view对应的ViewController的有效性,不能过早释放。

2、rootViewController

rootViewController时UIWindow的一个遍历方法,通过设置该属性为要添加view对应的ViewController,UIWindow将会自动将其view添加到当前window中,同时负责ViewController和view的生命周期的维护,防止其过早释放

相关文章

  • UIWindow ,UIScreen

    1,UIScreen一般也只是用来获取屏幕大小 CGrect screenBounds = [[UIScreen ...

  • UIButton

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen ...

  • UITextField

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen ...

  • UILable

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen ...

  • UIScreen和UIWindow

    UIScreen 和UIWindowUIScreen object defines the properties ...

  • tabBarController管理多个Storyboard

    self.window = [[UIWindow alloc]initWithFrame:[UIScreen ma...

  • UIWindow

    一、UIWindow的作用? A UIScreen object that identifies physical...

  • 无标题文章

    self.window = UIWindow(frame: UIScreen.main.bounds) self....

  • 霓虹灯代码

    self.window = UIWindow(frame:UIScreen.main.bounds) self.w...

  • iOS适配深色模式

    我们所熟悉的 UIView 、UIViewController 、UIScreen、UIWindow 都已经遵从了...

网友评论

      本文标题:UIWindow ,UIScreen

      本文链接:https://www.haomeiwen.com/subject/fhhzhttx.html