Viewcontroller生命周期

本文介绍了iOS应用中ViewController的生命周期,包括视图加载流程、视图显示与消失的过程及内存警告时的行为。通过代码实例展示了如何创建和销毁视图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在开发过程中,ViewController一般分为两种,一种是UIViewController或是UITableViewController这种用来显示数据的控制器,另外一种就是装载第一种Viewcontroller的控制器,比如UINavigationViewController和UITabBarController等,不过控制器的生命周期大体上是相同的。

下面是一个View的加载流程

首先调用loadView方法,完成一些配置工作,在调用ViewDidLoad方法,完成View的初始化。
下面用代码创建一个View:

- (void) loadView
- {
    CGRect viewFrame = [UISreen mainScreen].bounds;
    UIView *contentView = [[UIView alloc] initWithFrame:viewFrame];  
        contentView.backgroundColor = [UIColor blueColor];  
        self.view = contentView;  

    levelView = [[LevelView alloc] initWithFrame:viewFrame viewController:self];  
    [self.view addSubview:levelView];  
- }
- 

首先要获取当前设备的屏幕尺寸,再根据大小来创建一个UIView名为contentView;
将contentView设置为self.view;
接着我们在创建一个名为leveView的VIew,同样以屏幕大小的尺寸来创建它,并将其添加到contentView下,作为其子视图;

创建View之后,用完就要销毁它,来看看咱们怎么把View干掉。
当view被添加到其他view中之前,会调用viewWillAppear,之后会调用viewDidAppear。当view从其他view中移除之前,调用viewWillDisAppear,移除之后会调用viewDidDisappear。当view不再使用时,受到内存警告时,ViewController会将view释放并将其指向为nil。
当收到内存的警告之后,调用didReceiveMemoeryWarning方法,就接着调用ViewWillUnload,最后调用ViewDidUnload。

所以,一个View从出生到下葬,它的流程是这样的:init -> loadView -> = viewDidLoad -> V=viewWillAppear ->viewDidAppear -> viewWillDisAppear -> viewDidDisappear - > viewWillUnload -> viewDidUnload -> dealloc

至此,一个ViewController的生命周期就完结了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值