Ios 自定义navigationItem.titleView未设置
我在设置self.navigationItem.titleView时遇到问题,请有人帮我找出我的错误Ios 自定义navigationItem.titleView未设置,ios,swift,Ios,Swift,我在设置self.navigationItem.titleView时遇到问题,请有人帮我找出我的错误 import Foundation class CustomNavigationController: UINavigationController { override func viewDidLoad() { let logo = UIImage(named: "browse_back") var hexColor = 0x21BBD4 as UIn
import Foundation
class CustomNavigationController: UINavigationController
{
override func viewDidLoad() {
let logo = UIImage(named: "browse_back")
var hexColor = 0x21BBD4 as UInt
self.navigationBar.barTintColor = GeneralHelper.UIColorFromRGB(hexColor)
self.navigationItem.titleView = UIImageView(image: logo)
}
}
下面是我将标题视图设置为图像的代码
当我运行应用程序时,导航栏的颜色将更改为正确的颜色,但标题视图图像不会显示
我已经测试过,以确保图像确实存在。
谢谢
管理UINavigationController对象使用导航项
要填充导航栏的最上面两个视图控制器的
心满意足
资料来源:
您必须设置控制器的navigationItem的标题视图,该控制器是自定义导航控制器管理的导航堆栈中最顶层的控制器。对于使用UILabel作为标题视图的控制器
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
navigationItem.titleView?.sizeToFit()
}
希望这能奏效 啊,这意味着aI不会在导航控制器中设置它,而是导航控制器堆栈中的第一个控制器?编辑:工作了。甜甜的谢谢你的帮助,我会把它标记为答案。是的,没错。您可以在推送到堆栈上的控制器中进行设置。还可以尝试为您添加的UIView的框架指定大小。