0

Swift 2 がリリースされたので、もう一度アプリをコンパイルしようとしていますが、TabBarControllerインスタンスでエラーが発生しています。

別のメソッドを使用するために、インスタンスを vars で宣言していますViewControllers

これが私のコードです:

let barViewControllers = self.tabBarController?.viewControllers 
let listViewController = barViewControllers![2].viewControllers![0] as! dbViewController //The [2] is because it's the third TabBar and the [0] it's because It's embebed in a NavigationController.
let calendarViewController = barViewControllers![1] as! CalendarViewController

2行目に次のエラーがあります:

UIViewController does not have a member named "viewControllers"

誰でも私を助けることができますか?

ありがとう

4

1 に答える 1

1

持っていないviewControllerstypeのプロパティにアクセスしようとしています。は のプロパティですが、 の配列を返します。UIViewControllerviewControllersUITabBarControllerviewControllersUIViewController

viewControllersの配列UITabBarController(または抽出した項目のみ) にキャストして、そのviewControllerプロパティにアクセスします。

このような:

let barViewControllers = self.tabBarController?.viewControllers as! [UITabBarController]

またはこれ:

let listViewController = (barViewControllers![2] as! UITabBarController).viewControllers![0] as! dbViewController
于 2015-06-16T23:44:34.943 に答える