我在iOS应用中使用属性字符串为文本提供了一些风格:
NSDictionary *titleAttributes = @{NSFontAttributeName: [UIFont fontWithName:@"Raleway" size:12],
NSForegroundColorAttributeName: [UIColor lightGreyTextColor]};
NSMutableAttributedString *attributedTitle = [[NSMutableAttributedString alloc] initWithString:title attributes:titleAttributes];
问题是在iOS 6上,文本不再垂直居中UILabel
。在iOS 7上没问题。
我发现当我删除NSForegroundColorAttributeName
属性时,它正确居中,但文字为黑色
有谁知道解决这个问题的方法?这是iOS中的错误还是我错过了什么?
答案 0 :(得分:1)
尝试使用UITextAttributeTextColor
代替NSForegroundColorAttributeName
。
似乎是同一个问题,如this question。
答案 1 :(得分:0)
我有类似的问题。在将属性添加到标签
后,请确保放置使文本居中的代码行答案 2 :(得分:-1)
使用此代码:
if (SYSTEM_VERSION_IS_LESS_THAN(@"7.0")) {
[self.navigationBar setTitleVerticalPositionAdjustment:2 forBarMetrics:UIBarMetricsDefault];
}