[iOS基础控件 - 6.11.1] - 控制器 & 控制器view
通过storyboard创建
1 ViewController *vc = [[ViewController alloc] init];
1 ViewController *vc = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];

1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
2 // 手动添加window到screen
3 self.window = [[UIWindow alloc] init];
4 self.window.frame = [[UIScreen mainScreen] bounds];
5 self.window.backgroundColor = [UIColor grayColor];
6 [self.window makeKeyAndVisible];
7 return YES;
8 }


1 // 2.取得stroyboard
2 UIStoryboard *sb = [UIStoryboard storyboardWithName:@"mysb" bundle:nil];


1 // 3.1直接使用InitialViewController
2 self.window.rootViewController = [sb instantiateInitialViewController];



1 // 4.使用ID取得controller, 设置rootViewController
2 self.window.rootViewController = [sb instantiateViewControllerWithIdentifier:@"vc2"];

1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
2 // 1.手动添加window到screen
3 self.window = [[UIWindow alloc] init];
4 self.window.frame = [[UIScreen mainScreen] bounds];
5 self.window.backgroundColor = [UIColor grayColor];
6 [self.window makeKeyAndVisible];
7
8 // 2.取得stroyboard
9 UIStoryboard *sb = [UIStoryboard storyboardWithName:@"mysb" bundle:nil];
10
11 // 3.取出storyboar中的controller
12 // 3.1直接使用InitialViewController
13 ViewController *controller = [sb instantiateInitialViewController];
14
15 // 3.2使用ID
16 ViewController2 *controller2 = [sb instantiateViewControllerWithIdentifier:@"vc2"];
17
18 // 4.设置rootViewController
19 self.window.rootViewController = controller2;
20
21 return YES;
22 }







1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
2 // 1.手动添加window到screen
3 self.window = [[UIWindow alloc] init];
4 self.window.frame = [[UIScreen mainScreen] bounds];
5 self.window.backgroundColor = [UIColor grayColor];
6 [self.window makeKeyAndVisible];
7
8 // 从xib加载控制器, 设置rootViewController
9 self.window.rootViewController = [[XibViewController alloc] initWithNibName:@"myx" bundle:nil];
10
11 return YES;
12 }



- loadView代码(controller实现loadView方法)
- storyboard描述
- xib

最新版的官方文档:




1 // 加载view,这是延迟加载,当需要使用view而view是空的时候调用
2 - (void)loadView {
3 NSLog(@"loadView...");
4 self.view = [[UIView alloc] init];
5 self.view.frame = [[UIScreen mainScreen] bounds];
6 UILabel *label = [[UILabel alloc] init];
7 label.frame = CGRectMake(40, 40, 100, 100);
8 label.text = @"loadView";
9 [self.view addSubview:label];
10 }
1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
2 // 配置window
3 self.window = [[UIWindow alloc] init];
4 self.window.frame = [[UIScreen mainScreen] bounds];
5 self.window.backgroundColor = [UIColor grayColor];
6
7 // 配置storyboard中的controller为rootViewController
8 self.window.rootViewController = [[UIStoryboard storyboardWithName:@"test" bundle:nil] instantiateInitialViewController];
9
10 // 配置xib中的controller为rootViewController,主要要使用带有loadView的controller
11 // self.window.rootViewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
12
13 // 显示window
14 [self.window makeKeyAndVisible];
15 return YES;
16 }
17

1 // 配置xib中的controller为rootViewController,主要要使用带有loadView的controller
2 self.window.rootViewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
[iOS基础控件 - 6.11.1] - 控制器 & 控制器view的更多相关文章
- [iOS基础控件 - 6.11.3] 私人通讯录Demo 控制器的数据传递、存储
A.需求 1.搭建一个"私人通讯录"Demo 2.模拟登陆界面 账号 密码 记住密码开关 自动登陆开关 登陆按钮 3.退出注销 4.增删改查 5.恢复数据(取消修改) 这个代码 ...
- [iOS基础控件 - 6.11.2] - UINavigationController 多控制器 简单使用
A.概念 1.通常一个app有多个控制器 2.需要对这些控制器进行管理 3.有多个view的时候,用一个父view去管理多个子view 4.控制器管理也是如此,使用给一个父控制器,去控制子控制器 ...
- [iOS基础控件 - 6.11.4] storyboard 的 Segue
A.概念 storyboard中的跳转事件连线,都是一个UIStoryboardSegue对象(Segue) 来源控制器 触发控制器 目标控制器 跳转到的控制器 Seg ...
- [iOS基础控件 - 6.11.5] 沙盒 & 数据存储
A.沙盒 每个APP都有一个沙盒,是独立存在的 1.Xcode5和Xcode6的模拟器文件目录 a.模拟器路径改版 (1)Xcode5中模拟器路径为:/Users/用户名/Library/Appl ...
- [iOS基础控件 - 5.5] 代理设计模式 (基于”APP列表"练习)
A.概述 在"[iOS基础控件 - 4.4] APP列表 进一步封装,初见MVC模式”上进一步改进,给“下载”按钮加上效果.功能 1.按钮点击后,显示为“已下载”,并且不 ...
- [iOS基础控件 - 6.12.3] @property属性 strong weak copy
A.概念 @property 的修饰词 strong: 强指针/强引用(iOS6及之前是retain) weak: 弱智真/弱引用(iOS6及之前是assign) 默认情况所有指针都是强指针 ...
- [iOS基础控件 - 6.12.1] QQ菜单管理 UITabBarController 控制器管理
A.需求 1.类似QQ.微信顶部或者底部的窗口转换导航条 2.给每个页面添加相应内容 B.UITabBarController 1.基本概念: (1)内容高度 iOS7之前内容高度为:屏幕高度 - ...
- iOS 基础控件(下)
上篇介绍了UIButton.UILabel.UIImageView和UITextField,这篇就简短一点介绍UIScrollView和UIAlertView. UIScrollView 顾名思义也知 ...
- [iOS基础控件 - 6.10.2] PickerView 自定义row内容 国家选择Demo
A.需求 1.自定义一个UIView和xib,包含国家名和国旗显示 2.学习row的重用 B.实现步骤 1.准备plist文件和国旗图片 2.创建模型 // // Flag.h // Co ...
随机推荐
- Java对ArrayList进行排序
数字使用直接比较大小来排序,String的话,使用compare()方法进行排序. 测试代码: 1.对字符串对象排序 @Test public void test17() throws Excepti ...
- HDU 1698 Just a Hook (线段树 成段更新 lazy-tag思想)
题目链接 题意: n个挂钩,q次询问,每个挂钩可能的值为1 2 3, 初始值为1,每次询问 把从x到Y区间内的值改变为z.求最后的总的值. 分析:用val记录这一个区间的值,val == -1表示这 ...
- codeforces 235 div2 C Team
题目:http://codeforces.com/contest/401/problem/C 题意:n个0,m个1,求没有00或111的情况. 这么简单的题..... 做题的时候脑残了...,今天,贴 ...
- QSettings介绍
简介 QSettings类提供了持久的跨平台应用程序设置. 用户通常期望应用程序记住它的设置(窗口大小.位置等)所有会话.这些信息通常存储在Windows系统注册表,OS X和iOS的属性列表文件中. ...
- sql字符串函数(转)
计算字符串长度 len()用来计算字符串的长度 select sname ,len(sname) from student 字符串转换为大.小写 lower() 用来将一个字符串转换为小写,upper ...
- 求双连通分量的详解。(根据刘汝佳的训练指南p314)
无向图的双连通分量 点-双连通图:一个连通的无向图内部没有割点,那么该图是点-双连通图. 注意:孤立点,以及两点一边这两种图都是点-双连通的.因为它们都是内部无割点. 边-双连通图:一 ...
- Java [Leetcode 223]Rectangle Area
题目描述: Find the total area covered by two rectilinear rectangles in a 2D plane. Each rectangle is def ...
- 一天一个Java基础——排序
插入排序 直接插入排序: 当插入第i个数据元素k时,由前i-1个数据元素组成已排序的数据序列,将k与数据序列中各数据元素依次进行比较后,插入到数据序列的适当位置,使得插入后的数据序列仍是排序的. 直接 ...
- TCP/IP详解学习笔记(5)-IP选路,动态选路,和一些细节
1.静态IP选路 1.1.一个简单的路由表 选路是IP层最重要的一个功能之一.前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据包的IP地址来选择路由.这里就不重复了.首先来看看一个简单的系统 ...
- ASP.NET MVC+Bootstrap个人博客之打造清新分页Helper(三)
有点另类,分页直接是在后台拼接好html,然后发送到前台的: 1. 分页容器: <div class="pagination"> <ul> //****** ...