Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在故事板场景之间移动-分段和展开_Ios_Interface Builder_Segue_Uistoryboardsegue - Fatal编程技术网

Ios 在故事板场景之间移动-分段和展开

Ios 在故事板场景之间移动-分段和展开,ios,interface-builder,segue,uistoryboardsegue,Ios,Interface Builder,Segue,Uistoryboardsegue,我希望这是有意义的,希望您能在图片中看到每个场景右上角的按钮,以便移动到其他场景。 到目前为止,我可以通过模态序列从“正弦波”移动到“锯齿波”,通过放松回到“正弦波”,但我需要能够做的是再次移动到“锯齿波”,而无需调用它的新实例。 这可能吗?如果可能,如何实现? 当然,您可以这样做,但不能使用segue,因为segue总是创建新的视图控制器(而不是展开segue)。因此,您需要在这样的代码中显示“Saw Wave”(来自“正弦波”): sawWave是类sawWave的一个属性类型,您应该将其更

我希望这是有意义的,希望您能在图片中看到每个场景右上角的按钮,以便移动到其他场景。
到目前为止,我可以通过模态序列从“正弦波”移动到“锯齿波”,通过放松回到“正弦波”,但我需要能够做的是再次移动到“锯齿波”,而无需调用它的新实例。
这可能吗?如果可能,如何实现?


当然,您可以这样做,但不能使用segue,因为segue总是创建新的视图控制器(而不是展开segue)。因此,您需要在这样的代码中显示“Saw Wave”(来自“正弦波”):


sawWave是类sawWave的一个属性类型,您应该将其更改为真正的类名,并确保在IB中为此控制器设置标识符。因为您创建了对sawWave实例的强引用,并在呈现它之前检查它是否存在,您将转到同一个实例。

非常感谢@rdelmar这几乎是完美的,只是我需要能够在移动到每个场景和从每个场景移动时,使滑块和开关(从OP链接的图片中可以看到)处于相同的位置。我通过segue unwind部分实现了这一点,但不是全部。再次感谢。换句话说,有没有办法防止它们在两个场景之间转换时被重置?@amk1,是的,如果你按照我展示的方式来做,那么你来来去去的时候“锯波”中的一切都应该是一样的,从“锯波”中进行放松应该回到你离开时的“正弦波”。你没看到吗?
-(IBAction)goToSawWave:(UIButton *) sender {
    if (! self.sawWave) self.sawWave = [self.storyboard instantiateViewControllerWithIdentifier:@"SawWave"];
    [self presentViewController:sawWave animated:YES completion:nil];
}