2016-07-22 32 views
4

我有一個自定義的UINavigationController,可以從我的故事板訪問,我想通過創建自定義導航欄來自定義導航欄的高度。以下是我迄今爲止:在自定義UINavigationController類中創建UINavigationBar時出錯

var navBar = UINavigationBar(frame: CGRect(x: 0.0, y: 0.0, width: UIScreen.main().bounds.width, height: 70.0)) 
navBar.barTintColor = UIColor(red: 155.0/255.0, green: 155.0/255.0, blue: 155.0/255.0, alpha: 1.0) 
super.init(navigationBarClass: navBar, toolbarClass: nil) 

在最後一行我得到這個錯誤

Cannot convert value of type 'UINavigationBar' to expected argument type 'AnyClass?' 

任何人都知道爲什麼嗎?它可能是一個錯誤。 我正在使用Xcode 8 beta和Swift 3

回答

3

super.init(navigationBarClass:需要一個類(AnyClass)作爲參數。 您有一個對象navBar這是UINavigationBar類的對象(不是類),並且您試圖將對象設置爲類參數。接下來使用正確正在初始化:

super.init(navigationBarClass: UINavigationBar.self, toolbarClass: nil) 

對於杆高度,你可以嘗試使用這樣的:https://stackoverflow.com/a/20440989/2739795

+0

謝謝你,就像一個魅力的工作! –

相關問題