多控制器
来源:互联网 发布:淘宝无忧退货怎么设置 编辑:程序博客网 时间:2024/04/29 03:02
如果发现控制器的View还在,但是view上面的数据不显示,极大可能是因为:控制器为局部变量,提前销毁了,需要创建强引用
#import "HMViewController.h"#import "HMOneViewController.h"#import "HMTwoViewController.h"#import "HMThreeViewController.h"@interface HMViewController ()- (IBAction)vc1;- (IBAction)vc2;- (IBAction)vc3;@property (nonatomic, strong) HMTestViewController *test;@property (nonatomic, strong) HMOneViewController *one;@property (nonatomic, strong) HMTwoViewController *two;@property (nonatomic, strong) HMThreeViewController *three;@end@implementation HMViewController- (HMOneViewController *)one{ if (!_one) { self.one = [[HMOneViewController alloc] init]; self.one.view.frame = CGRectMake(10, 70, 300, 300); } return _one;}- (HMTwoViewController *)two{ if (!_two) { self.two = [[HMTwoViewController alloc] init]; self.two.view.frame = CGRectMake(10, 70, 300, 300); } return _two;}- (HMThreeViewController *)three{ if (!_three) { self.three = [[HMThreeViewController alloc] init]; self.three.view.frame = CGRectMake(10, 70, 300, 300); } return _three;}- (void)viewDidLoad{ [super viewDidLoad]; // HMTestViewController *test = [[HMTestViewController alloc] init];// test.view.frame = CGRectMake(100, 100, 200, 300);// test.view.backgroundColor = [UIColor redColor];// [self.view addSubview:test.view];// self.test = test; // 如果发现:控制器的view还在,但是view上面的数据不显示,极大可能是因为:控制器被提前销毁了 // 1.一个控制器的view是可以随意调整尺寸和位置的 // 2.一个控制器的view是可以随意添加到其他view中 // 3.如果将一个控制器的view,添加到其他view中显示,那么要想办法保证控制器不被销毁 // 4.原则:只要view在,view所在的控制器必须得在,这样才能保证view内部的数据和业务逻辑正常}- (IBAction)vc1 { [self.two.view removeFromSuperview]; [self.three.view removeFromSuperview]; [self.view addSubview:self.one.view];}- (IBAction)vc2 { [self.one.view removeFromSuperview]; [self.three.view removeFromSuperview]; [self.view addSubview:self.two.view];}- (IBAction)vc3 { // 强引用, remove view不会销毁 [self.two.view removeFromSuperview]; [self.one.view removeFromSuperview]; [self.view addSubview:self.three.view];}@end
0 0
- 多控制器
- 多控制器
- 多控制器
- No2 控制器view与多控制器
- ios多控制器切换
- UINavigationController多视图控制器
- 多个控制器
- UINavigationController多视图控制器
- 多控制器管理, UINavigationController
- 多控制器管理
- UIStoryboardSegue(多控制器)
- 多控制器管理
- 多控制器跳转
- 多控制器UINavigationController
- 多控制器的创建
- 多控制器管理
- 多控制器navigationController代码
- 多控制器-UITabBarController
- 资料链接
- MySQL高级六——函数创建和使用
- ini文件读写
- 正则表达式-Matcher类中的group方法探析
- java安装jdk时不能安装jre
- 多控制器
- Java中的接口
- 关于tableView的footView对tableview的frame.height的高度调配
- setneedsdisplay setneeddisplayinrect的区别
- doget和dopost的区别
- 2016-01-09 OC练习题(第一套)
- 让DuiLib支持Icon图片显示
- 【PHP入门篇】 8.PHP开发工具之Zend Studio常用功能--慕课网【学习总结】
- C++学习笔记40——重载作符之算术操作符与关系操作符