所以我的问题是我无法在 iPhone 6 plus 上设置条形颜色。我可以为所有其他设备设置条形色调颜色,但对于 iPhone 6 plus,条形色调不会改变。这是 View Controller 的代码。此外,该 VC 被导航 Controller 推送到堆栈上。非常感谢大家的帮助。
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
navigationController?.navigationBar.barTintColor = .redColor()
navigationController?.navigationBar.translucent = false
navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor()]
navigationController?.navigationBar.tintColor = UIColor.whiteColor()
}
这是我在 View Controller 中做的唯一事情,但它根本不起作用。
最佳答案
好的,我解决了这个问题。由于某种原因,iPhone 6 plus 打电话
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
navigationController?.navigationBar.barTintColor = .primaryGrayColor()
navigationController?.navigationBar.translucent = false
navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.blackColor()]
}
每次将新的 View Controller 推送到导航堆栈时。 iPhone 5、iPhone 5s、iPhone 6 或 iPhone 7 中不会出现这种情况。
关于swift - 无法在 iPhone 6 plus 上设置 bartintcolor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40050010/