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. 基于Python实现的死链接自动化检测工具

    基于Python实现的死链接自动化检测工具   by:授客 QQ:1033553122 测试环境: win7 python 3.3.2 chardet 2.3.0 脚本作用: 检测系统中访问异常(请求 ...

  2. 小程序实践(五):for循环绑定item的点击事件

    微信展示列表效果借助于 wx:for  简单写一个列表(wxml文件中): 对应的数据源(js文件中): 写一个点击监听: 效果: 以上.可以实现列表的item点击效果,但是无法到点击的item对应的 ...

  3. [Objective-C]编程艺术 笔记整理

    看了<禅与 Objective-C 编程艺术>,发现不少平时不注意的或注意但没有系统总结的东西,特此记录一下. 这次没有整理完,后续更新会结合手里的一些其他资料整理. 新博客wossone ...

  4. html + css3 demo

    最近,在做一个比较大的网站,主要服务于欧美地区,全站为英文版本,因为是电子产品,因此,要展示产品内在美(扯个蛋!)仿照小米.錘子.苹果等网站,着重于css3动效效果,搜集整理了一些网站中用到的动效图, ...

  5. PyCharm 使用Github管理Django项目

    不管是对于教程代码免费分享的需要,还是项目开发过程中的版本管理,Github都是我们首选的开源代码仓库,如果你没有私有仓库,并且不用保护代码,那么将项目上传到Github上是最佳的选择. 关于如何使用 ...

  6. vue使用axios请求后端数据

    1. 安装axios $ npm install axios 2.在main.js里面导入axios import axios from 'axios' Vue.prototype.$http = a ...

  7. ERROR 1044 (42000): Access denied for user 'root'@'localhost'

    从供应商那边接手一个MySQL数据库(数据库版本为5.7.21 MySQL Community Server (GPL)),在创建账号时遇到了"ERROR 1044 (42000): Acc ...

  8. C#-hello world(二)

     1.C# 程序构成 命名空间(Namespace) 一个 class Class 方法 Class 属性 一个 Main 方法 语句(Statements)和 表达式(Expressions) 注释 ...

  9. Function、Object、Prototype 之间的关系解析

    前提:js中所有的内置对象都是Function 的实例. 例如:Array\String\Number... 等 原理剖析: 对象属性搜索的原理就是按照对象的 __proto__ 属性进行搜索,直到_ ...

  10. visual studio 启动无法打开IIS express

    删除 解决方案下的vs文件夹之后重新生成