【手动创建UIWindow Objective-C语言】

2023-11-11 01:28

本文主要是介绍【手动创建UIWindow Objective-C语言】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、上节课,我们讲了控制器View的懒加载:

通知

1.什么时候会调用这个懒加载呢,用我们直接,控制器self.view

self.view的时候:

通知

什么时候,调用它这个self.view,

就要去加载控制器的view,

self.view 加载控制器的view

通知

我们给大家演示过了,这个大家已经清楚了,我们给大家说了一个细节,就是颜色的问题,对吧,

再解释一下颜色的问题,

通知

我们在这里,hmVc“点儿”view“点儿”backgroundColor:

通知

这个执行顺序是怎么样的呢,

首先,hmVc“点儿”view,是不是就要控制器的view,

这时候,这个颜色先不说啊,颜色都还没到呢,

你先加载view,最后才是颜色,

所以呢,先看view,

view,怎么去加载呢,

先到控制器里面:

通知

loadView:

把view加载起来,

然后呢,viewDidLoad,才算这个view真实的有了,

有了之后呢,你在这里面,把它的颜色改了,改成绿色了,对吧,

在这里面,赋值了一个颜色,

通知

在这里面,赋值了一个颜色,然后,回到Delegate里面,

通知

现在,这个view,是不是才算真实的有了,

那这时候,又给了它一个颜色,红色,

改成了一个红色,

所以它最后就显示成一个红色了,

但是呢,我们在通过断点去调试的时候:

通知

最下面也加一个断点:

通知

控制器里面也加一个断点:

通知

command + R:

通知

走一个:

通知

1)创建控制器

2)设置view,的颜色是红色,

通知

hmVc“点儿”view,遇到这个“点儿”,就进到控制器里面:

3)控制器里面,执行loadView:

通知

现在是不是加载view,

4)然后呢,在viewDidLoad:里面:

通知

这个时候,我如果再跳的话,它没有再在这行停留了:

通知

没有再在这行停留了,

然后这个背景色,一赋值,

相当于直接就过了,

看着啊,一走,它就到31行了:

通知

是不是啊,直接来到31行了,

所以呢,有同学可能会有问题,这个颜色,有点儿疑问,

给大家解释清楚,

好,这是我们这一个关于这个控制器的view的懒加载,

这篇关于【手动创建UIWindow Objective-C语言】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/386608

相关文章

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

MySQL分表自动化创建的实现方案

《MySQL分表自动化创建的实现方案》在数据库应用场景中,随着数据量的不断增长,单表存储数据可能会面临性能瓶颈,例如查询、插入、更新等操作的效率会逐渐降低,分表是一种有效的优化策略,它将数据分散存储在... 目录一、项目目的二、实现过程(一)mysql 事件调度器结合存储过程方式1. 开启事件调度器2. 创

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端

mysql外键创建不成功/失效如何处理

《mysql外键创建不成功/失效如何处理》文章介绍了在MySQL5.5.40版本中,创建带有外键约束的`stu`和`grade`表时遇到的问题,发现`grade`表的`id`字段没有随着`studen... 当前mysql版本:SELECT VERSION();结果为:5.5.40。在复习mysql外键约

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

Window Server2016 AD域的创建的方法步骤

《WindowServer2016AD域的创建的方法步骤》本文主要介绍了WindowServer2016AD域的创建的方法步骤,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一、准备条件二、在ServerA服务器中常见AD域管理器:三、创建AD域,域地址为“test.ly”

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ