我想知道如何以编程方式“收紧字母间距”?
此选项可用于在 xib 文件中制作的 UILabel,有时非常方便。
我知道以前有人问过这个问题,但我没有看到在界面生成器中提到这个蜜蜂的答案,所以我很好奇......
您可能正在寻找这个:
@property(nonatomic) BOOL adjustsLetterSpacingToFitWidth
UILabel
新的财产iOS6
。
您可能想要使用 UILabel 属性:
allowsDefaultTighteningForTruncation: Bool
并将其设置为true
. (默认为false
)
根据苹果文档:
当此属性设置为 true 时,标签会在允许发生任何截断之前收紧其文本的字符间距。标签根据字体、当前线宽、换行方式和其他相关信息自动确定最大收紧量。
https://developer.apple.com/reference/uikit/uilabel/1620533-allowsdefaulttighteningfortrunca
adjustsLetterSpacingToFitWidth
自 iOS 7 起已弃用。
您现在(从 iOS 8 开始)可能想要执行以下操作:
NSAttributedString *as =
[[NSAttributedString alloc] initWithString:@"Kerninating all the strings"
attributes:@{NSKernAttributeName : @(-2.0)}];
label.attributedText = as;