1.2 控制器 view 的创建和加载
|
|
图解:
代码验证:
1 #import "AppDelegate.h" 2 #import "TDViewController.h" 3 4 @interface AppDelegate () 5 @end 6 7 @implementation AppDelegate 8 9 - (BOOL)application:(UIApplication *)application 10 didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 11 12 // 创建window 13 self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; 14 15 // 1.没有同名xib情况下(不用sb 和 xib) alloc init 16 // 结论:透明的view 17 TDViewController *vc = [[TDViewController alloc] init]; 18 19 // 2.通过 storyboard 创建 20 // 结论:View默认是白色(因为sb拖控制器的时候 就是白色),和指定sb的描述是一致的 21 UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Test" bundle:nil]; 22 TDViewController *vc = [sb instantiateInitialViewController]; 23 24 // 3.有指定xib情况下创建 25 // 结论:view和指定xib的描述是一致的 26 TDViewController *vc = 27 [[TDViewController alloc] initWithNibName:@"TD" bundle:nil]; 28 29 // 4.有同名xib情况 30 // 结论:如果有同名的话,会有优先加载同名的 xib, 因此不需要 initWithNibName 31 TDViewController* vc = [[TDViewController alloc] init]; 32 33 // 5.有同名去掉controller的情况 34 // 结论:如果有同名去掉controller的情况,优先级 会比 同名高 35 TDViewController *vc = [[TDViewController alloc] init]; 36 37 self.window.rootViewController = vc;// 设置跟控制器 38 [self.window makeKeyAndVisible];// 显示 39 40 return YES; 41 }
1 #import "TDViewController.h" 2 3 @interface TDViewController () 4 @end 5 6 @implementation TDViewController 7 8 - (void)viewDidLoad { 9 [super viewDidLoad]; 10 } 11 12 - (void)didReceiveMemoryWarning { 13 [super didReceiveMemoryWarning]; 14 } 15 16 // 6.loadView 此方法用来重写vc的view 17 // 结论:比其他(xib sb 代码)的优先级都要高 18 - (void)loadView { 19 self.view = [[UIView alloc] init]; 20 self.view.backgroundColor = [UIColor purpleColor]; 21 NSLog(@"loadView"); 22 } 23 24 @end
控制器view的加载
出处:http://www.cnblogs.com/shorfng/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
转载于:https://www.cnblogs.com/shorfng/p/5149910.html
1.2 控制器 view 的创建和加载相关推荐
- Android O: View的绘制流程(一): 创建和加载
从这篇博客开始,我们会用几篇文章, 基于Android O的代码,分析一下View的绘制流程. 在分析具体的绘制流程前,我们先来了解一下XML中定义的View, 如何被创建和加载. 一.setCo ...
- ios-day11-04(控制器view的创建与延迟加载)
控制器view的创建 假设控制器为MJViewController. 1,如果MJViewController重写了loadView方法,就根据loadView方法中的代码去创建view(即使load ...
- DCMTK:用于创建和加载增强型CT对象的测试
DCMTK:用于创建和加载增强型CT对象的测试 用于创建和加载增强型CT对象的测试 用于创建和加载增强型CT对象的测试 #include "dcmtk/config/osconfig.h&q ...
- IOS 控制器View的创建方式(方式的优先级 、view的延迟加载)
MJViewController的view的创建 的方式的优先级 控制器view的延迟加载 ● 控制器的view是延迟加载的:用到时再加载 ● 可以用isViewLoaded方法判断一个UIViewC ...
- 2018-11-13#Hive外表创建和加载数据
hive 关联表和外表的区别: 1. 外部表需要external关键之,location是数据文件默认存放位置,不管是不管是select 还是load的数据都存放在这里.导入数据到外部表,数据并没有m ...
- iOS之深入了解控制器View的加载
前言 在面试中,面试官可能会问这样的问题,loadView有什么作用,它与viewDidLoad有何区别? 首先我们得知道,控制器view是通过懒加载的方式进行加载的,即用到的时候再加载. loadV ...
- Tensorflow |(3)变量的的创建、初始化、保存和加载
Tensorflow |(1)初识Tensorflow Tensorflow |(2)张量的阶和数据类型及张量操作 Tensorflow |(3)变量的的创建.初始化.保存和加载 变量的的创建.初始化 ...
- TensorFlow 教程 --进阶指南--3.2变量:创建、初始化、保存和加载
变量:创建.初始化.保存和加载 当训练模型时,用变量来存储和更新参数.变量包含张量 (Tensor)存放于内存的缓存区.建模时它们需要被明确地初始化,模型训练后它们必须被存储到磁盘.这些变量的值可在之 ...
- SpringMVC源码分析_1 SpringMVC容器启动和加载原理
SpringMVC源码分析_1 SpringMVC启动和加载原理 ...
- PyTorch学习笔记2:nn.Module、优化器、模型的保存和加载、TensorBoard
文章目录 一.nn.Module 1.1 nn.Module的调用 1.2 线性回归的实现 二.损失函数 三.优化器 3.1.1 SGD优化器 3.1.2 Adagrad优化器 3.2 分层学习率 3 ...
最新文章
- HTML5学习笔记(二):HTML基础学习之一
- ExtJS-Grid框增加复选框checkbox
- ArcEngine中画点画线画面
- IIS发布站点错误收集(持续更新)
- python拟合函数_Python-最小二乘法曲线拟合
- 第六届省赛(软件类)真题----Java大学A组答案及解析
- windows服务编写原理(上)
- 新视角:用图像分类来建模文字识别也可以SOTA
- 【BZOJ2149】拆迁队,分治+斜率优化DP
- Spring:Spring-过滤器Filter原理
- RabbitMQ消息队列:发布/订阅(Publish/Subscribe)
- 嵌入式实时音乐语音识别系统的实现
- LaTeX中的魔法注释
- 2020德勤面试开始了吗_曝!玛氏、德勤、携程面试题新鲜出炉!2020第一波面试复盘来了......
- CMUX协议学习总结
- java导出excel 图片_请教java导出多张图片到Excel问题!
- rasa实现同义词替换
- Ubuntu 安装之后无法连接网络问题
- 2021年6月四六级成绩查询时间!
- java 北京 就业_叩丁狼教育北京Java一期就业报道