我试图使我的应用程序只是在纵向模式我使用navigationcontroller我得到这个错误我使用Xcode7
和Swift 2
和目标系统IOS 9.3
声明仅在文件范围内有效
extension UINavigationController {
public override func supportedInterfaceOrientations() -> Int {
return visibleViewController.supportedInterfaceOrientations()
}
public override func shouldAutorotate() -> Bool {
return visibleViewController.shouldAutorotate()
}
}
extension UITabBarController {
public override func supportedInterfaceOrientations() -> Int {
if let selected = selectedViewController {
return selected.supportedInterfaceOrientations()
}
return super.supportedInterfaceOrientations()
}
public override func shouldAutorotate() -> Bool {
if let selected = selectedViewController {
return selected.shouldAutorotate()
}
return super.shouldAutorotate()
}
}
Thnx公司
1条答案
按热度按时间vcudknz31#
错误信息很清楚。你不能在任何东西里面声明
extension
--在class
声明里面,在struct
声明里面,等等。它必须在所有东西的外面,在包含文件的顶层。它不能有花括号。您没有显示声明此
extension
的上下文,但很明显,它周围有 * 和 * 大括号,否则您不会得到错误!但在任何情况下,无论您在何处声明它们,* 您的 * 扩展都是非法的:您不能在扩展中执行
override
。(请参阅我的答案here。)