我有一个简单的主从应用程序,我试图在一个视图控制器之间传递数据到下一个。我有一个视图控制器,它显示为模态视图控制器,用户从中选择一个选项UIPickerView
,并根据他们选择的行,设置字符串。但是,当视图控制器为dismissed
时,字符串为空。当用户在模态视图控制器上选择登录按钮时,它会向主视图控制器发布通知,以使用由设置的字符串启动方法,UIPickerView
但是由于字符串为空,它一直失败。我已将 parserURL 设置为每个视图控制器以及 ivars 中的属性。
这是在模态视图控制器中设置字符串的代码:
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
MasterViewController *master = [[MasterViewController alloc] init];
if (row == 0) {
[self.dropdownButton setImage:[UIImage imageNamed:@"dropdown"] forState:UIControlStateNormal];
}
if (row == 1) {
[self.dropdownButton setImage:[UIImage imageNamed:@"hbm"] forState:UIControlStateNormal];
[master setParserURL:@"http://98.246.50.81/firecom/xml/HBM.xml"];
NSLog(@"URL = %@", master.parserURL);
}
if (row == 2) {
[self.dropdownButton setImage:[UIImage imageNamed:@"hwh"] forState:UIControlStateNormal];
[master setParserURL:@"http://98.246.50.81/firecom/xml/HWH.xml"];
}
}
登录按钮 IBAction:
-(IBAction)loginButton:(id)sender {
[self dismissViewControllerAnimated:YES completion:nil];
[[NSNotificationCenter defaultCenter] postNotificationName: @"login" object: nil];
}