IOS故事板对象

时间:2016-10-26 22:58:10

标签: ios storyboard

我的应用程序如下所示。我正在配置从第一个场景到第二个场景的转换,当用户点击摇滚按钮时,使用摇滚方法(没有segue)。但是当我运行应用程序时,我收到以下错误。 请告诉我这是什么问题?是故事板对象,还没有创建引用的标签吗?enter image description here enter image description here

3 个答案:

答案 0 :(得分:0)

secvc或其label属性均为nil。在该行上设置断点并在该行运行之前检查每个值,以查看哪个是nil

答案 1 :(得分:0)

您无法设置文本,因为尚未创建标签,这是因为您尝试时未加载第二个ViewController的视图,因此设置标签文本

可能的解决方案是添加

var text: String!

在你的第二个视图控制器中。在rock函数中设置此var:

secvc.text = "rock ..."

稍后在第二个ViewController的viewDidLoad()(现在加载视图并创建标签)功能中设置标签文本:

label.text = text

答案 2 :(得分:0)

一个很好的通用方法是在视图控制器上定义NSDictionary属性,然后简单地从调用者设置该属性。然后,在viewDidLoad中,您可以访问字典并从dict中的各个字段填写任何窗口小部件数据。这尊重GUI小部件的生命周期,因为只交换数据,所以更容易。不要以这种方式将refs传递给任何UI *对象,并且避免使用ref count循环将自己射入脚中。