如題
使用UILabel時候想要文字靠右顯示,但是不想頂着UILabel的尾部顯示,類似於設置UIButton 的edge。 UILabel好像不可以直接設置edge,所以選擇使用UILabel的attributedText。
以下是代碼把想要的Label和想要表示的文字作爲參數傳入方法就可以了。
- (void)setAttributeStringForPriceLabel:(UILabel *)label text:(NSString *)text
{
NSMutableAttributedString *attrString = [[NSMutableAttributedString
alloc] initWithString:text];
NSUInteger length = [text length];
NSMutableParagraphStyle *
style = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];
style.tailIndent = -10;
style.alignment = NSTextAlignmentRight;
[attrString addAttribute:NSParagraphStyleAttributeName value:style
range:NSMakeRange(0, length)];
label.attributedText = attrString;
}
PS:同理設置左對齊的時候 還要爲首行多設置一個屬性:
style.firstLineHeadIndent = 10;
通過對UILabel的Attribute的使用,多行顯示的時候還可以設置相鄰兩行文字的間距等。 總之花式UILabel的時候不要忘了 attributeString !