【发布时间】:2018-08-11 15:23:18
【问题描述】:
我在执行从 mapKit 注释到另一个故事板上的另一个视图控制器的转场时遇到了问题。
我有一个带有全屏地图视图的故事板,我想对包含 PanelViewController 的另一个故事板执行转场。
使用map.addAnnotation() 向地图添加MKAnnotation 后,我使用mapView(_:didSelect:) 获取当前选定的标记。我知道我必须在这里执行 segue,但我不知道如何。
我想我有 2 个选项,但它们都不起作用:
present(PanelViewController, 动画: true, 完成: nil)
这给了我一个错误:“Cannot convert value of type 'PanelViewController.Type' to expected argument type 'UIViewController'”
performSegue(withIdentifier: "showPanel", sender: view)
这会使应用程序崩溃并出现未捕获的异常错误:“Receiver (<myApp.MapViewController: 0x109200f80>) has no segue with identifier 'showPanel”
当然这是真的,因为我在这个视图控制器上没有这个标识符的 segue。我不知道如何创建一个,因为它只是一个全屏 mapKit 视图,而 xcode 不允许我从 mapKit 视图中按 ctr+拖动到另一个视图控制器。
有什么想法吗?
【问题讨论】: