UILabel 文字靠右顯示 並且 文字尾部距UILabel有一定的距離,使用attributeString

如題

使用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 !

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章