Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.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_Objective C_Segue_Uistoryboardsegue - Fatal编程技术网

Ios 知道最近表演/弹出的音乐吗?

Ios 知道最近表演/弹出的音乐吗?,ios,objective-c,segue,uistoryboardsegue,Ios,Objective C,Segue,Uistoryboardsegue,我能知道刚才表演了/弹出了哪一段吗 例如,我有两个控制器: 视图控制器A:有1个按钮可导航到视图B 查看控制器B:使用后退按钮查看A 我希望视图A可以检测到视图B刚刚从堆栈中弹出,这样我就可以在视图中执行某些操作 我可以这样做吗?您可以命名segue,然后实现prepareForSegue(segue:UIStoryboardSegue,sender:AnyObject?方法,在该方法中检查segue是否存在标识符。如果是从ControllerA到ControllerB的顺序,只需设置一些标

我能知道刚才表演了/弹出了哪一段吗

例如,我有两个控制器:

  • 视图控制器A:有1个按钮可导航到视图B
  • 查看控制器B:使用后退按钮查看A
我希望视图A可以检测到视图B刚刚从堆栈中弹出,这样我就可以在
视图中执行某些操作


我可以这样做吗?

您可以命名segue,然后实现
prepareForSegue(segue:UIStoryboardSegue,sender:AnyObject?
方法,在该方法中检查segue是否存在标识符。如果是从ControllerA到ControllerB的顺序,只需设置一些标志,您将在
视图中选中该标志就会出现
方法

大概是这样的:

var pushedB = false

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "mySegueName" {
        pushedB = true
    }
}

override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)
    if pushedB {
        pushedB = false
        // TODO your action
    }
}

是的,但是有办法吗?似乎我找不到调用从segue返回的委托方法。没有什么比“从segue返回”更好的了。Segue对象只是封装了从一个控制器转换到另一个控制器的操作。在show segue中,它基本上由两个控制器决定是执行presentModal还是push。。。