我有一个自定义的UINavigationController,我从故事板中访问,我想通过创建自定义导航栏来自定义导航栏的高度。以下是我到目前为止的情况:
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
答案 0 :(得分:3)
super.init(navigationBarClass:
期望一个类(AnyClass
)作为参数。
你有一个对象navBar
,它是UINavigationBar
类的对象(而不是类),你试图将对象设置为类参数。使用next进行正确的初始化:
super.init(navigationBarClass: UINavigationBar.self, toolbarClass: nil)
对于酒吧高度,您可以尝试使用以下内容:https://stackoverflow.com/a/20440989/2739795