UIWindow定义了一个window对象,其用于管理和协调一个app在设备屏幕上的显示。除非一个app能在外部设备上显示内容,一般就只有一个window。

  window的主要功能:1)提供一个区域来显示views;2)发送events给views。

  如果想要改变你的app显示的内容,你可以改变window的根视图,但你不能创建一个新的window对象。

   @property(nonatomic) UIWindowLevel windowLevel   // 默认值为0.0.

const UIWindowLevel UIWindowLevelNormal;
const UIWindowLevel UIWindowLevelAlert;
const UIWindowLevel UIWindowLevelStatusBar;
typedef CGFloat UIWindowLevel;

   @property(nonatomic, strong) UIScreen *screen   // 默认地,全部windows都在主设备屏幕上创建

   @property(nonatomic, strong) UIViewController *rootViewController   // 默认值为nil。将一个视图控制器赋给rootViewController,将是视图控制器的views作为window的内容视图。

  @property(nonatomic, readonly, getter=isKeyWindow) BOOL keyWindow   // keyWindow用来接收键盘和其他非触控事件。一次只能有一个window未keyWindow。

  - (void)makeKeyAndVisible  // 使receiver成为主窗口,并显示在其他一样水平或低水平的窗口之前。

   - (void)becomeKeyWindow   // 当receiver成为了key window时会被自动调用。永远不要试图直接调用该方法。然后,会公布一个UIWindowDidBecomeKeyNotification到默认通知中心。

   - (void)makeKeyWindow   //使receiver成为主窗口。

   - (void)resignKeyWindow   // 当receiver放弃key window时会被自动调用。永远不要试图直接调用该方法。然后,会公布一个UIWindowDidResignKeyNotification到默认通知中心。

   - (CGPoint)convertPoint:(CGPoint)point toWindow:(UIWindow *)window   

   - (CGPoint)convertPoint:(CGPoint)point fromWindow:(UIWindow *)window

   - (CGRect)convertRect:(CGRect)rect toWindow:(UIWindow *)window

   - (CGRect)convertRect:(CGRect)rect fromWindow:(UIWindow *)window

   - (void)sendEvent:(UIEvent *)event

UIWindow 官方文档解析的更多相关文章

  1. node.js官方文档解析 02—buffer 缓冲器

    Buffer 类的实例类似于整数数组,但 Buffer 的大小是固定的.且在 V8 堆外分配物理内存.Buffer 的大小在被创建时确定,且无法调整. Buffer 类在 Node.js 中是一个全局 ...

  2. Android Google官方文档解析之——Application Fundamentals

    Android apps are written in the java programming language.The Android SDK tools compile your code-al ...

  3. sanic官方文档解析之Deploying(部署)和Extension(扩展)

    1,Deploying(部署) 通过内置的websocket可以很简单的部署sanic项目,之后通过实例sanic.Sanic,我们可以运行run这个方法通过接下来的关键字参数 host (defau ...

  4. sanic官方文档解析之Example(一)

    1,示例 这部的文档是简单的示例集合,它能够帮助你快速的启动应用大部分的应用,这些应用大多事分类的,并且提供给ini工作的连接代码: 1.1,基础示例 这部分示例集成了提供简单sanic简单的代码 单 ...

  5. sanic官方文档解析之Custom Protocols(自定义协议)和Socket(网络套接字)

    1,Custom Protocol:自定义协议 温馨提示:自定义协议是一个高级用法,大多数的读者不需要用到此功能 通过特殊的自定义协议,你可以改变sanic的协议,自定义协议需要继承子类asyncio ...

  6. sanic官方文档解析之路由

    1,路由,路由相当于一个网址的地址,来确定网址的位置和唯一性 当http://server.url/被允许访问服务器,当最后的"/"通过路由匹配到了业务逻辑处理的函数,将会返回一个 ...

  7. sanic官方文档解析之logging和request Data

    1,sanic的logging: Sanic允许有做不同类型的日志(通过的日志,错误的日志),在基于Python3的日志API接口请求,你必须具备基本的Python3的日志知识,在你如果想创建一个新的 ...

  8. sanic官方文档解析之下载和Configuration

    1,sanic框架是做什么的? sanic的官方网址:https://sanic.readthedocs.io/en/latest/ sanic框架是一个类似于flask框架的在Python3.5以上 ...

  9. Android Google官方文档解析之——System Permissions

    Android is a privilege-separated operating system, in which each application runs with a distinct sy ...

随机推荐

  1. springboot 学习之路 5(打成war包部署tomcat)

    目录:[持续更新.....] spring 部分常用注解 spring boot 学习之路1(简单入门) spring boot 学习之路2(注解介绍) spring boot 学习之路3( 集成my ...

  2. CSS之表格边框合并、兄弟标签外边距合并、父子标签的外边距合并

    本文内容: 表格边框合并 兄弟标签外边距合并 父子标签的外边距合并 首发日期:2018-05-01 表格边框合并: 发生情况: 当设置了cellpadding="0" cellsp ...

  3. CsQuery中文编码乱码问题

    一.问题描述 InnerHTML 中文显示为Модель 二.解决方法 在初始化CQ对象前,先设置执行以下语句: CsQuery.Config.HtmlEncoder = CsQuery.HtmlEn ...

  4. mssql sqlserver 可以存储二进制数据的字段类型详解

    转自: http://www.maomao365.com/?p=6738 摘要: 下文将从数据库的数据类型着手,剖析在sqlserver数据库中可以存储二进制数据的数据类型,如下所示: mssql s ...

  5. 自动化测试基础篇--Selenium鼠标键盘事件

    摘自https://www.cnblogs.com/sanzangTst/p/7477382.html 前面几篇文章我们学习了怎么定位元素,同时通过实例也展示了怎么切换到iframe,怎么输入用户名和 ...

  6. window.onunload中使用HTTP请求

    在页面关闭时触发window.onunload 在onunload中要使用http请求,需要使用同步请求: 如: $.ajax({ url: url, async: false }); iframe页 ...

  7. Linux下键盘值 对应input_evnet的code值。

    最近做了一个linux下面的模拟鼠标和键盘的app,但不是很清楚字符对应的键值:查找内核源码,在kernel/include/uapi/linux/input.h文件中找到: 下面给出普通键盘上面对应 ...

  8. elixir mix 简介

    概述 mix 是 elixir 工程的构建工具,利用 mix,可以快速方便的创建 elixir 工程,写单元测试,管理 elixir 包的依赖管理等等. 我觉得刚开始学习 elixir 的时候,先简单 ...

  9. March 11th, 2018 Week 11th Sunday

    All good things must come to an end. 好景无常. Love is when the other person's happiness is more importa ...

  10. 异常--finally关键字

    finally定义: finally{}代码块中的代码是一定会执行的,一般用来关闭资源或者一些必须执行的代码,如数据库连接的关闭