2016-05-01 97 views
0

我是一個初學者,其次是開源框架正在做,但這一步並不知道問題出在哪裏。類型'CASPageMenu'的值有沒有成員'currentPageIndex'

public class CAPSPageMenu: UIViewController, UIScrollViewDelegate, UIGestureRecognizerDelegate { 
    ... 
    var currentPageIndex : Int = 0 
    ... 
} 

var pageMenu : CAPSPageMenu? 
func didTapGoToLeft() { 
    var currentIndex = pageMenu!.currentPageIndex # error 

    if currentIndex > 0 { 
     pageMenu!.moveToPage(currentIndex - 1) 
    } 
} 

錯誤消息:類型的值 'CASPageMenu' 沒有成員 'currentPageIndex'

感謝

回答

1

您必須初始化pageMenu,否則它不知道它將有多少頁。

你寫的線還不夠:

var pageMenu : CAPSPageMenu? 

之後,你有寫:

var pageMenu : CAPSPageMenu? 

override func viewDidAppear(animated: Bool) {    
    super.viewDidAppear(animated) 

viewDidAppear可以補充一點:

// MARK: - Scroll menu setup 

// Initialize view controllers to display and place in array 
var controllerArray : [UIViewController] = [] 
let controller1 : UIViewController! = UIViewController() 
controller1.title = "TEST1" 
controllerArray.append(controller1) 
let controller2 : UIViewController! = UIViewController() 
controller2.title = "TEST2" 
controllerArray.append(controller2) 
// Initialize scroll menu 
// Customize menu (Optional) 

let parameters: [CAPSPageMenuOption] = [.ScrollMenuBackgroundColor(UIColor(red: 30.0/255.0, green: 30.0/255.0, blue: 30.0/255.0, alpha: 1.0)),.ViewBackgroundColor(UIColor(red: 20.0/255.0, green: 20.0/255.0, blue: 20.0/255.0, alpha: 1.0)), 
      .SelectionIndicatorColor(UIColor.orangeColor()), 
      .BottomMenuHairlineColor(UIColor(red: 70.0/255.0, green: 70.0/255.0, blue: 80.0/255.0, alpha: 1.0)), 
      .MenuItemFont(UIFont(name: "HelveticaNeue", size: 13.0)!), 
      .MenuHeight(40.0), 
      .MenuItemWidth(90.0), 
      .CenterMenuItems(true) 
] 
pageMenu = CAPSPageMenu(viewControllers: controllerArray, frame: CGRectMake(0.0, 0.0, self.view.frame.width,self.view.frame.height), pageMenuOptions: parameters) 
self.addChildViewController(pageMenu!) 
self.view.addSubview(pageMenu!.view) 
pageMenu!.didMoveToParentViewController(self) 

現在當你didTapGoToLeft() pageMenu確切地知道他目前的頁面,總頁數,上一頁和下一頁要去哪裏..

0

更換:

var pageMenu : CAPSPageMenu? 
func didTapGoToLeft() { 
    var currentIndex = pageMenu!.currentPageIndex # error 

    if currentIndex > 0 { 
     pageMenu!.moveToPage(currentIndex - 1) 
    } 
} 

有了:

func didTapGoToLeft() { 
    if let currentIndex = CAPSPageMenu.currentPageIndex { 
     if currentIndex > 0 { 
      self.moveToPage(currentIndex - 1) 
     } 
    } 
} 

看看它現在的作品。

相關問題