-systemFontOfSize:和-boldSystemFontOfSize之间是否有中等重量字体:?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了-systemFontOfSize:和-boldSystemFontOfSize之间是否有中等重量字体:?相关的知识,希望对你有一定的参考价值。
-systemFontOfSize太薄了,而boldSystemFontOfSize太粗了。我需要介于两者之间。
当我创建像这样的UIFont时:
[UIFont boldSystemFontOfSize:14];
然后调试器打印此字体信息:
font-family:“。Helvetica NeueUI”; font-weight:bold; font-style:normal; font-size:14px
有时字体具有中等字体粗细。如何创建此类型的字体,但中等重量?
调用NSLog(@"%@", [UIFont fontNamesForFamilyName:@"Helvetica Neue"]);
打印所有可用的Helvetica Neue字体样式,其中有HelveticaNeue-Medium
,听起来像你想要的那样:
UIFont *font = [UIFont fontWithName:@"HelveticaNeue-Medium" size:14.0f];
如果你想确保当系统字体发生变化时字体也会发生变化(例如,就像从Helvetica到Helvetica Neue的视网膜设备一样),你可以先得到系统字体,然后拿familyName
和pointSize
来检索一个使用+ fontNamesForFamilyName
然后+ fontWithName:size:
减肥
从iOS 8.2开始,您可以使用:
[UIFont systemFontOfSize:14 weight:UIFontWeightMedium];
Swift 2.0,xcode7.1
if #available(ios 8.2, *) {
titleLabel?.font = UIFont.systemFontOfSize(15, weight: UIFontWeightMedium)
} else {
titleLabel?.font = UIFont(name: "HelveticaNeue-Medium", size: 15)
}
斯威夫特3:
UIFont.systemFont(ofSize: 14, weight: UIFontWeightMedium)
使用Swift 4或5,添加此扩展名:
extension UIFont {
class func mediumSystemFont(ofSize pointSize:CGFloat) -> UIFont {
return self.systemFont(ofSize: pointSize, weight: .medium)
}
}
然后 :
myLabel.font = UIFont.mediumSystemFont(ofSize: 16)
同样的原理适用于Semibold,Black等,检查UIFont.Weight
Swift 2.3并没有改变字体大小:
extension UIFont {
var mediumFont: UIFont {
return UIFont.systemFontOfSize(self.pointSize, weight: UIFontWeightMedium)
}
}
用于:
titleLabel.font = titleLabel.font.mediumFont
以上是关于-systemFontOfSize:和-boldSystemFontOfSize之间是否有中等重量字体:?的主要内容,如果未能解决你的问题,请参考以下文章