Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.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 停止UI警报控制器返回上一个视图_Ios_Swift_Uialertcontroller - Fatal编程技术网

Ios 停止UI警报控制器返回上一个视图

Ios 停止UI警报控制器返回上一个视图,ios,swift,uialertcontroller,Ios,Swift,Uialertcontroller,我的应用程序中有一个UIAlertView。但出于某种奇怪的原因,如果我决定按下警报视图上的“后退”按钮。它实际上会将我带到上一个视图控制器,而不是简单地解除警报 我怎样才能防止这种情况?我只想在按下后退按钮时隐藏警报 本期视频: 以下是警报的功能: let alertController = UIAlertController.init(title: "Open Map", message: "", preferredStyle: .alert) alertController.addActi

我的应用程序中有一个UIAlertView。但出于某种奇怪的原因,如果我决定按下警报视图上的“后退”按钮。它实际上会将我带到上一个视图控制器,而不是简单地解除警报

我怎样才能防止这种情况?我只想在按下后退按钮时隐藏警报

本期视频:

以下是警报的功能:

let alertController = UIAlertController.init(title: "Open Map", message: "", preferredStyle: .alert)
alertController.addAction(UIAlertAction.init(title: "Google Maps", style: .default, handler: { (action) in
    self.googleMapsOpen()
}))
alertController.addAction(UIAlertAction.init(title: "Apple Maps", style: .default, handler: { (action) in
    self.appleMapsOpen()
}))
alertController.addAction(UIAlertAction.init(title: "Back", style: .default, handler: { (action) in
    self.dismiss(animated: true, completion: nil)

}))
self.present(alertController, animated: true) {
}
去掉这个

self.dismiss(animated: true, completion: nil)
这里

当您按下该操作时,警报控制器将自动解除,因此您的书面解除将解除当前显示的vc,并删除此项

self.dismiss(animated: true, completion: nil)
这里


当您按下操作时,警报控制器将自动解除,因此您的书面解除将解除当前显示的vc

标记为“后退”的按钮应解除当前视图控制器。如果只是想解除警报,请将其标记为“取消”,不要解除当前视图控制器。标记为“上一步”的按钮应解除当前视图控制器。如果您只是想解除警报,请将其标记为“取消”,并且不要解除当前视图控制器。您应该明确指出,
self
是视图控制器,而不是警报控制器。@rmaddy这不是在警报出现时执行上述行的情况,它将解除警报,而不是vc控制器,那么她自己在那个vcHuh的当前状态下跑步?但是OP的问题是调用
self.dismise
会解除视图控制器。这是因为
self
是视图控制器。知道
self
是视图控制器,而不是警报是非常相关的。并在警报已解除后调用警报操作的处理程序。您的回答令人困惑,因为您似乎建议处理程序中应保留
self.discouse
行。您应该明确指出
self
是视图控制器,而不是警报控制器。@rmaddy在显示警报时,上述行不会以任何方式执行,它将关闭警报,而不是vc控制器,因此self-her将在该vcHuh的当前状态下运行?但是OP的问题是调用
self.dismise
会解除视图控制器。这是因为
self
是视图控制器。知道
self
是视图控制器,而不是警报是非常相关的。并在警报已解除后调用警报操作的处理程序。您的答案令人困惑,因为您似乎建议将
self.disclease
行保留在处理程序中。