应用程序设计理念:视图控制器(UIViewController)、视图(UIView)
利用视图控制器(底层)管理视图(外观),一对一
1.视图的作用:负责显示的外观
2.视图控制器的作用:创建界面、管理视图的生命周期
3.UIViewController的UIView关系:系统的UIViewController中天生自带一个视图,UIView通过self.view属性来访问控制器自带的这个视图
4.viewDidLoad方法:创建视图时会自动调用,而且只被调用一次,有关视图的初始化工作都会放在这个方法中
5.使用VC的步骤:
step1:编写一个类,继承自UIViewController
step2:重写类中的viewDidLoad方法,创建界面内容
step3:在didFinishLaunching方法中,创建window的实例,创建vc的实例,将vc设置为window的rootViewController(根vc),显示window
实际操作如下:
1.创建控制器
在AppDelegate.m中
#import "AppDelegate.h"
#import "ViewController.h"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window=[[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];
//self.window=[[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
self.window.backgroundColor=[UIColor greenColor];
//1.创建控制器的实例 myVC自带一个视图
ViewController* myVC=[[ViewController alloc]init];
//2.将控制器设置为window的根视图控制器
self.window.rootViewController=myVC;
//self.window.rootViewController=[ViewController new];
[self.window makeKeyAndVisible];
return YES;
}
2.视图控制器viewDidLoad方法
1).控制器拥有对其自带的视图的生命周期(创建--->销毁)管理权
2).在视图的生命周期的第一个阶段就是执行viewDidLoad方法
3).作用:用于创建视图,如:初始化界面、创建界面的显示元素
4).特点:在整个生命周期中,只会被执行一次
例:
在 ViewController.m中
(自己创建的类,继承了UIViewController父类方法,并重写了viewDidLoad方法)
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
//控制器拥有对其自带的视图的生命周期(创建--->销毁)管理权
//在视图的生命周期的第一个阶段就是执行viewDidLoad方法
//作用:用于创建视图,如:初始化界面、创建界面的显示元素
//特点:在整个生命周期中,只会被执行一次
- (void)viewDidLoad
{
[super viewDidLoad];
//设计view
UILabel *label=[[UILabel alloc]init];
label.frame=CGRectMake(110, 200, 100, 40);
label.text=@"HelloWlord";
label.textColor=[UIColor redColor];
//添加到控制器自带的那个视图里面
[self.view addSubview:label];
}
@end
效果如下: