IOS 7のスリムシステムフォントの名前は何ですか? UIFont systemFontOfSize:
のように使用する方法はありますか?
iOS 8.2以降、UIFont.systemFontOfSize(_:CGFloat,weight:CGFloat)
を使用できるようになりました:
UIFont.systemFontOfSize(19, weight: UIFontWeightLight)
iOS SDKは重みの定数を提供しました:
UIFontWeightUltraLight
UIFontWeightThin
UIFontWeightLight
UIFontWeightRegular
UIFontWeightMedium
UIFontWeightSemibold
UIFontWeightBold
UIFontWeightHeavy
IOSはiOSでシステムフォントを変更できるため(たとえば、iOS 7のHelvetica NeueやiOS 9のSan Franciscoなど) 。
以下のようにUIFontの拡張を行うだけです
extension UIFont {
static func lightSystemFontOfSize(size: CGFloat) -> UIFont {
let familyName = UIFont.systemFontOfSize(15).familyName.stringByReplacingOccurrencesOfString(" ", withString: "")
return UIFont(name: "\(familyName)-Light", size: size)!
}
}
カテゴリを作成しました:
#import <UIKit/UIKit.h>
@interface UIFont (System)
+ (UIFont *)lightSystemFontOfSize:(CGFloat)fontSize;
+ (UIFont *)ultraLightSystemFontOfSize:(CGFloat)fontSize;
@end
#import "UIFont+System.h"
@implementation UIFont (System)
+ (UIFont *)lightSystemFontOfSize:(CGFloat)fontSize {
return [UIFont fontWithName:@"HelveticaNeue-Light" size:fontSize];
}
+ (UIFont *)ultraLightSystemFontOfSize:(CGFloat)fontSize {
return [UIFont fontWithName:@"HelveticaNeue-UltraLight" size:fontSize];
}
@end