iOS titleView不居中

titleView不居中的原因大部分情况下是因为titleview的宽度超出了最大值,具体原因这篇文章iOS11.0设置导航栏self.navigationItem.titleView居中分析的极好,我这里主要提出我的解决方案,我认为更加简洁,且适用性更强

titleView居中

//设置一个较小的宽度
let width = 44
navigationItem.titleView = UIView.init(frame: CGRect.init(x: 0, y: 0, width: 44, height: 44))
//这是真正的目标titleView:
let naviContentView = UIView.init(frame: CGRect.init(x: 0, y: 0, width: kScreenWidth, height: 44))
//naviContentView addSubViews
//设置center
naviContentView.center = CGPoint.init(x: 22, y: 22)
navigationItem.titleView?.addSubview(naviContentView)

你可能感兴趣的:(iOS titleView不居中)