在navigationItem中居中titleView
Posted
技术标签:
【中文标题】在navigationItem中居中titleView【英文标题】:centering titleView in navigationItem 【发布时间】:2016-12-13 18:25:40 【问题描述】:我正在尝试将我的 titleView 放在我的navigationItem
中。
本地化我的应用程序后,我看到了这种行为:
这是我作为extension
到navigationItem
的代码:
extension UINavigationItem
func makeImg()
let container = UIView(frame: CGRect(x: 0,y: 0,width: 200,height: 40))
let logo = UIImage(named: "Rookie")
let imageView = UIImageView(frame: CGRect(x: 66.75, y: 7.25, width: 66.5, height: 25.5))
imageView.image = logo
imageView.layer.masksToBounds = true
imageView.clipsToBounds = true
container.addSubview(imageView)
self.titleView = container
我认为这与我在 navigationItem 中的 superView 有关。 所以我应该参考 Screens 边界。有什么想法吗?
【问题讨论】:
您将 imageView 包装在容器中是否有任何具体原因?可以直接将imageView设置为titleView。 【参考方案1】:如果设置为titleView
的视图非常宽,则会发生这种情况。作为titleView
添加的视图仅在其宽度大于可用空间时才会调整大小,在这种情况下,它们会调整大小以填充左侧栏按钮项和右侧之间的空间。
在本例中,您将 container
对象设置为 200 磅宽,这比这两个项目的可用空间都要宽。
如果您设置 container
宽度以匹配图像视图(即 66.5 磅),那么它应该居中。 :)
(或者反过来,如果你不打算添加任何其他视图,你可以直接将图像视图设置为titleView
)
【讨论】:
尝试直接制作。像魅力一样工作。非常感谢 别担心!很高兴我能帮上忙! :)以上是关于在navigationItem中居中titleView的主要内容,如果未能解决你的问题,请参考以下文章
在 Monotouch 中更改“返回”NavigationItem 文本?