开发者社区> 问答> 正文

在向新的视图控制器传值时,需要实现在viewDidLoad方法中进行初始化吗?

//如,现在要进入一个新的视图控制器:

{
NewController *controller = [[NewController alloc] init];
card = self.card;

controller.nameLabel.text = card.name;
controller.descriptionLabel.text = card.description;

[[self navigationController]pushViewController:controller animated:YES];
}

//运行后,新导入的视图控制器的相关标签没有传值,如果在新的控制器的viewDidLoad方法中进行初始化,就可以了
-(void)viewDidLoad{
nameLabel.text = item.name;
descriptionLabel.text = item.description;
}

问题:为何在第一种情况下,也对controller的nameLabel.text和controller.description进行了赋值,所生成的视图控制器的标签并没有改变?

展开
收起
a123456678 2016-07-28 10:06:00 1910 0
1 条回答
写回答
取消 提交回答
  • 视图没有载入之前,你的 nameLabel 和 descriptionLabel 是 nil.

    2019-07-17 20:01:02
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载