在我的呈现视图控制器中,我有以下 prepareForSegue 函数
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if([[segue identifier] isEqualToString:@"goToView2"]){
ViewController2 *controller2 = [segue destinationViewController];
controller2.multiplierStepper.value = 7.0;
controller2.randomString = @"string set from Scene 1";
}
}
在 ViewController2 中有一个我的 UIStepper 值的出口和一个 NSString
@property (strong, nonatomic) IBOutlet UIStepper *multiplierStepper;
@property (strong, nonatomic) NSString *randomString;
在 ViewController2.m viewDidLoad 中,我正在测试上面由呈现视图控制器设置的值
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
NSLog(@"in viewDidLoad: self.multiplierStepper.value: %f", self.multiplierStepper.value);
NSLog(@"in viewDidLoad: randomstring: %@", self.randomString);
}
控制台输出非常适合 NSString,但 UIStepper 值始终显示在 Interface Builder (1) 中定义的初始值。
[10682:f803] in viewDidLoad: self.multiplierStepper.value: 1.000000
[10682:f803] in viewDidLoad: randomstring: string set from Scene 1
答案可能非常明显,但我不知道如何从呈现视图控制器中设置目标视图控制器中步进器的值。
任何想法我做错了什么?