Ios 从父类访问变量

Ios 从父类访问变量,ios,swift,uinavigationcontroller,parent-child,uipageviewcontroller,Ios,Swift,Uinavigationcontroller,Parent Child,Uipageviewcontroller,我使用的是UIPageViewController 我的类-ViewController(包含所有代码,是数据源)运行PageItemController的实例 My UIPageControl(pControl)显示在ViewController的导航栏中 我想要以下代码: PageItemController override func viewDidAppear(){ let vController = the parent view controller // ViewCont

我使用的是
UIPageViewController

我的类-
ViewController
(包含所有代码,是数据源)运行
PageItemController
的实例

My UIPageControl(
pControl
)显示在
ViewController
的导航栏中

我想要以下代码:

PageItemController

override func viewDidAppear(){

    let vController = the parent view controller // ViewController
    vController.pControl.currentPage = itemIndex

}

这是如何实现的?

在视图控制器上使用
parentViewController
属性:

if let parentVC = self.parentViewController as? MyParentViewController {
    itemIndex = parentVC.pControl // set variable here
}
这有用吗

    // Get the Navigation Controller
    let navControl = self.navigationController

    // Get all the pages in the hierarchy
    let allPages = navControl!.viewControllers

    // Get the current page
    let thisPageViewController = navControl!.visibleViewController

    // Work out which is the current page.
    // I'm sure someone else will have a more elgant way of doing this.
    let arrayOfPages : NSArray = NSArray(array: allPages)
    let thisPageIndex = arrayOfPages.indexOfObject(thisPageViewController)

    // Now get the parent and set a value in it.
    if thisPageIndex > 0 {
        let parentPageIndex = thisPageIndex - 1
        let parentView: AnyObject = arrayOfPages[parentPageIndex]
        parentView.pControl.currentPage = thisPageIndex
    } else {
        println("We are at the top and had to stop.")
    }

在我的情况下,如果让parentVC=self.parentViewController作为,我会说
?视图控制器
?因为我在
ViewController
内部创建了
PageItemController
的实例,所以这是否有效。。以上代码对我来说返回false