2016-06-24 3 views
0

에서만 유효 IOS 9.3
선언은 파일 범위선언은 파일 범위 (확장) 내가이 오류 스피 usring <code>Xcode7</code> 및 <code>Swift 2</code> 그리고 대상 시스템을 얻을 있는 navigationController 사용하여 단지 세로 모드 스피 내 응용 프로그램을 만들려고

에서만 유효합니다
 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

답변

4

오류 메시지는 매우 분명하다. 선언 안에, struct 선언 안에는 아무 것도 안쪽에 extension을 선언 할 수 없습니다. 포함 파일의 최상위 레벨에있는 모든 것의 바깥에 있어야합니다. 주위에 중괄호가 없어야합니다.

이 문장을 extension으로 선언했지만 아직 명확하지 않은 경우 입니다. 그렇지 않으면 오류가 발생하지 않습니다.

어떤 경우에도 신고 한 지역에 관계없이 확장자는 불법입니다. 확장자로 override을 사용할 수 없습니다. (내 대답을 참조하십시오 here)

+0

당신이 이것을 설명하기 위해 몇 가지 코드를 입력하면 마음 – kvra13