事件描述: 用xib创建了一个View,里面有按钮,有TableView。我需要将数据在初始化时传递进去,方便TableView来显示信息。
首先想到的是awakeFromNib这个方法(我以为是和ViewDidLoad差不多的方法,后来发现差多了),在这个里面,将上一个界面的数据通过公共变量读取到。但是,公共变量的值为空。跟代码,我发现,当View使用nib在初始化时,就会调用这个方法:
ConnectionView * connectionView = [[[NSBundle mainBundle]loadNibNamed:@"ConnectionView" owner:self options:nil]objectAtIndex:0];
这个方法创建View时,awakeFromNib这个方法是和上面的代码一起执行的,当我将数据传递进去的时候,如果在awakeFromNib这个方法里面写,就会造成,传递数据时,这个方法不再走了,导致View里面,值为空。
怎么解决这个呢?我请教了我的头,头说,写一个方法就可以了,这样,在addSubView之前调用,就可以将值传递进去了。
又get了一项新的功能.除了其他3种传值以外,又有了这个方法传值。
时间: 2024-10-05 11:48:20