我在navigationBar中遇到了titleview的问题。问题是当我将视图分配到titleView时它不会显示。我试过使用navigationItem.title = @"eqweqweq";
但没有任何反应。
这个视图是由代码创建的,我不知道这是不是问题,因为我使用过的其他ViewControllers工作得很好。
iOS 10中是否有任何我无法使用titleView的错误?有时它有时不起作用。
我在谷歌搜索但没有帮助我。我希望有人可以帮助我T_T。
谢谢
答案 0 :(得分:4)
一次只使用一个。
设置titleView
的{{1}},如下所示:
navigationItem
或
直接设置UILabel *lblTitle = [[UILabel alloc] init];
lblTitle.text = @"eqweqweq";
lblTitle.backgroundColor = [UIColor clearColor];
[lblTitle sizeToFit];
self.navigationItem.titleView = lblTitle;
的{{1}},如下所示:
title
答案 1 :(得分:4)
确保您设置自定义titleView的大小。例如,在设置titleView之前,使用 titleLabel.sizeToFit()。
let titleLabel = UILabel()
titleLabel.attributedText = NSAttributedString(string: title, attributes: attributes)
titleLabel.sizeToFit() // Important part
navigationItem.titleView = titleLabel
答案 2 :(得分:0)
最后我解决了这个问题!
问题在于这个功能:
extension UINavigationController{
func applyWhiteEffect(){
var bounds = self.navigationBar.bounds
let whiteView = UIView()
bounds.origin.y = -20
bounds.size.height = bounds.size.height + 20
whiteView.frame = bounds
whiteView.autoresizingMask = [.FlexibleWidth, .FlexibleHeight]
whiteView.userInteractionEnabled = false
whiteView.backgroundColor = UIColor.whiteColor()
whiteView.tag = 1000
self.navigationBar.addSubview(whiteView)
self.navigationBar.backgroundColor = UIColor.clearColor()
self.navigationBar.sendSubviewToBack(whiteView)
}
}
这个功能应用了白色视图,而且iOS 10有问题,所以我改为:
func applyWhiteEffect(){
var bounds = self.navigationBar.bounds
let whiteView = UIView()
bounds.origin.y = -20
bounds.size.height = 20
whiteView.frame = bounds
whiteView.autoresizingMask = [.FlexibleWidth, .FlexibleHeight]
whiteView.userInteractionEnabled = false
whiteView.backgroundColor = UIColor.whiteColor()
whiteView.tag = 1000
self.navigationBar.addSubview(whiteView)
self.navigationBar.backgroundColor = UIColor.whiteColor()
self.navigationBar.sendSubviewToBack(whiteView)
}
将视图更改为仅覆盖状态栏和self.navigationBar.backgroundColor = UIColor.whiteColor()
非常感谢大家帮助我:D
答案 3 :(得分:0)
尝试在viewWillApear函数中设置titleView。
答案 4 :(得分:-1)
请试试这个。它对我有用。
self.title = "eqweqweq"
希望它会对你有所帮助。谢谢