我有一个视图控制器,当我在屏幕上显示这个视图时,我希望能够从调用类传递变量给它,以便我可以设置标签等iOS - 将变量传递给视图控制器
首先,我只是尝试创建一个标签的属性,并从调用类调用。例如:
SetTeamsViewController *vc = [[SetTeamsViewController alloc] init];
vc.myLabel.text = self.teamCount;
[self presentModalViewController:vc animated:YES];
[vc release];
但是,这并没有奏效。所以我试着创建一个方便的初始化器。
SetTeamsViewController *vc = [[SetTeamsViewController alloc] initWithTeamCount:self.teamCount];
然后在SetTeamsViewController
我
- (id)initWithTeamCount:(int)teamCount {
self = [super initWithNibName:nil bundle:nil];
if (self) {
// Custom initialization
self.teamCountLabel.text = [NSString stringWithFormat:@"%d",teamCount];
}
return self;
}
不过,这也不能工作。它只是加载我在nib文件中给出标签的任何值。我用NSLog()
s散布了代码,它正在传递正确的变量值,它只是不设置标签。
任何帮助将不胜感激。
编辑:我刚刚尝试在我指定的初始化程序中设置一个实例变量,然后在viewDidLoad中设置标签,并且工作!这是做这件事的最好方法吗?
此外,当关闭此模式视图控制器时,我也更新了调用ViewController视图中按钮的文本。但是,如果我再次按下此按钮(再次显示模式视图),而另一个视图在屏幕上呈现动画效果,则该按钮会暂时将其原始值(来自笔尖)。有人知道为什么吗?
这些标签是否被声明为IBOutlets并且在IB中与它们各自的视图连接? – Stavash
@stavash是的,他们是。 –