ios - swift的一个问题,请教各位.
黄舟
黄舟 2017-04-18 09:48:57
0
1
351

在外部定义了一个返回的方法,在按钮中药调用,最后一行报错,提示我再加一句 as [AnyObject]上去.加上去之后报错信息为:cannot convert value of type '[AnyObject]' to expected argument type '[UIViewController]'

func doBack(){


let currentControllers = self.navigationController?.viewControllers;
let newControllers:NSMutableArray=NSMutableArray(array: currentControllers!)
newControllers.removeLastObject()

self.navigationController?.navigationBarHidden=true;
self.navigationController?.setViewControllers(newControllers as [AnyObject] , animated: true)

}

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

Antworte allen(1)
左手右手慢动作

既然是swift,就尽量用swift的东西写代码……
let currentControllers -> var currentControllers

newControllers 不需要了

直接 currentControllers removeLast

PS:你的newControllers 是个Obc对象:NSMutableArray,
方法需要的是一个Array<UIViewController>
这两个是完全不一样的东西……

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage