UINavigationBar titleview 图像未与 UINavigationBar 对齐
Posted
技术标签:
【中文标题】UINavigationBar titleview 图像未与 UINavigationBar 对齐【英文标题】:UINavigationBar titleview image not aligned with the UINavigationBar 【发布时间】:2013-10-30 06:28:23 【问题描述】:我的徽标在默认 UINavigationBar 中看起来很小,所以我通过覆盖将高度增加到 67
- (CGSize)sizeThatFits:(CGSize)size
CGSize newSize = CGSizeMake(self.frame.size.width, 67);
return newSize;
我在- (void)viewDidLoad
中添加了一个大小为 266x130 的 2x 图像
self.navigationItem.titleView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"logo.png"]];
但我的标题标志与 NavigationBar 不对齐。
我只是想知道为什么标题视图在自定义高度下表现得很奇怪。将图像作为标题视图添加到标准 UINavigationBar 时,我没有遇到任何问题。
这也是为自定义高度覆盖 UINavigationBar 的正确方法吗?有没有其他方法可以做到这一点?
【问题讨论】:
:您的图像尺寸很大。调整图像大小降低图像的高度。我不确定,但试试这个 【参考方案1】:你试过这个或类似的东西吗?
float positionOffset = ...;
[UINavigationBar appearance] setTitleVerticalPositionAdjustment:positionOffset forBarMetrics:UIBarMetricsDefault];
还有this,如果这不能立即奏效的话。
【讨论】:
如何获取位置偏移值? 你可以在里面放任何你想要的号码。您可以精确计算它(或不精确计算,因为它是一个偏移量,而不是您的绝对选择),或者您可以只盯着它;我猜应该是(- 10 分)。 我一直在寻找一种更标准的方式来对齐标题视图。反正暂时会试试这个。 让我知道它是否有效...在自定义导航栏方面没有什么是标准的。以上是关于UINavigationBar titleview 图像未与 UINavigationBar 对齐的主要内容,如果未能解决你的问题,请参考以下文章
UINavigationBar titleView 比栏本身高
UINavigationBar titleView 用于不同的方向
防止 UINavigationItem 的 TitleView 闪烁