将类型作为变量传递

时间:2018-01-22 14:11:56

标签: ios swift

如何在Swift 4中将Type作为变量传递?

finally

我在一个可怕的if语句中有类似于上面的内容我想转移到一个函数,但不确定我如何传递'MapViewController'(或者控制器作为变量)。

'“Pseduo”Code'

let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "MapViewController") as! MapViewController

1 个答案:

答案 0 :(得分:0)

你可以使用像这里的通用参数:

function setVC<T>(withViewController: T) {
    let storyboard = UIStoryboard(name: "Main", bundle: nil)
    let vc = storyboard.instantiateViewController(withIdentifier: "MapViewController") as! T
}