如下代码:
// 加载一个tabbar控制器
houseMessageTabbarController *houseTabbar = [[houseMessageTabbarController alloc] init];
// 使用创建的模型传递数据
houseTabbar.messageItems = [meterMessageItems objectWithKeyValues:self.houseNameArray[indexPath.row]];
houseTabbar.testTitle = @"测试一下";
NSLog(@"创建的内存地址:%p,%p",houseTabbar,houseTabbar.messageItems);
// // 把tabbar控制器添加到tabbar控制器里面
[self.navigationController pushViewController:houseTabbar animated:YES];
到此控制器跳转过去的时候发现,并没有正确得需要传递过去的值,经过调试发现,控制器的加载过程为 : init , viewDidLoad , - (void)setMessageItems:(meterMessageItems *)messageItems ,然后在条转的控制器是在viewDidLoad里面拿数据出来处理的,这肯定就没有值了,所以在跳转之后,在- (void)setMessageItems:(meterMessageItems *)messageItems 这个 方法里面重新拿出需要处理的值再赋值一遍就可以了.
时间: 2024-11-13 06:56:39