         adjustScrollViewFrame()
         adjustMenuViewFrame()
         removeSuperfluousViewControllersIfNeeded()
-        currentViewController?.view.frame = childViewFrames[indexInside]
+        currentViewController?.view.frame = childViewFrames[_selectedIndex]
         hasInit = true
         view.layoutIfNeeded()
     }
     
     override public func viewDidAppear(animated: Bool) {
         super.viewDidAppear(animated)
-        postFullyDisplayedNotificationWithIndex(indexInside)
-        didEnterController(currentViewController!, atIndex: indexInside)
+        postFullyDisplayedNotificationWithIndex(_selectedIndex)
+        didEnterController(currentViewController!, atIndex: _selectedIndex)
     }
     
     override public func didReceiveMemoryWarning() {

            layoutChildViewControllers()
            currentViewController = displayingControllers[index] as? UIViewController
            postFullyDisplayedNotificationWithIndex(index)
            indexInside = index
            didEnterController(currentViewController!, atIndex: indexInside)
        }
    }
    

    
    public var selectedIndex: Int {
        set {
            _selectedIndex = newValue
            menuView?.selectItemAtIndex(newValue)
        }
        get { return _selectedIndex }
    }
    
    public var viewFrame = CGRect() {
