我有两个具有ViewController
和ClassMapViewController
的控制器。在ClassMapViewController
中,我有一个 UIBarButtonItem
,在敲击时将关闭ClassMapViewController
并返回ViewController
。
import UIKit
class ViewController: UIViewController {
@IBAction func unwindToHome(segue: UIStoryboardSegue) {
}
}
ClassMapViewController:UIViewController{
var mapView:MapClass=MapClass()
override func viewDidLoad(){
super.viewDidLoad()
mapView.latitude=43.679456
mapView.longitude=-79.624712
mapView.title="HelloWorld"
mapView.address="firstmarker"
mapView.zoom=12
view=mapView.getView()
navigationItem.leftBarButtonItem=UIBarButtonItem(title:"Back",style:.plain,target:self,action:"previous")
}
func previous(){
present(ViewController(),animated:true,completion:nil)
dismiss(animated:true,completion:nil)
}
}
在我的头顶上,我相信您在参数列表中缺少 #selector 。
navigationItem.leftBarButtonItem=UIBarButtonItem(
title: "Back",
style: .plain,
target: self,
action: #selector(previous)
)
您将需要一个 @OBJC 在您要调用的函数上的修改器,但是,我认为您可以像下面的present((方法一样调用ViewController,需要提供对您的VC的实际参考。
@objc func previous() {
present(ViewController(),animated:true,completion:nil)
dismiss(animated:true,completion:nil)
}