How to align UILabel text in paragraph
I have a small issue in setting text alignment as per client requirement. Client want text to be aligned in paragraph manner with numbers in separate line. Please see the below image the number have 19 pixels padding and text aligned in paragraph manner with 41 pixels padding.
If we set left alignment to label we will get the second line below the numeric.
I tried search for solution but not able to succeed.
Thanks in advance.
You'll need to set different attributes for the question part and the answer part. You're already doing this to control the font, so it shouldn't be a big change. You need to set the paragraph style for each section. For the question section, you need to set the firstLineHeadIndent
to 19 and the headIndent
to 41. For the answer section, you need to set both to 41.
NSMutableParagraphStyle *questionStyle = [[NSMutableParagraphStyle alloc] init];
questionStyle.firstLineHeadIndent = 19;
questionStyle.headIndent = 41;
NSDictionary *questionAttributes = @{
NSParagraphStyleAttributeName: questionStyle,
NSFontAttributeName: [UIFont systemFontOfSize: 20]
};
NSMutableParagraphStyle *answerStyle = [questionStyle mutableCopy];
answerStyle.firstLineHeadIndent = questionStyle.headIndent;
NSDictionary *answerAttributes = @{
NSParagraphStyleAttributeName: answerStyle,
NSFontAttributeName: [UIFont systemFontOfSize: 16]
};
NSMutableAttributedString *richText = [[NSMutableAttributedString alloc] init];
[richText appendAttributedString:[[NSAttributedString alloc]
initWithString:questionText attributes:questionAttributes]];
[richText appendAttributedString:[[NSAttributedString alloc]
initWithString:answerText attributes:answerAttributes]];
label.attributedText = richText;
尝试这个
NSMutableParagraphStyle *paragraphStyle = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];
paragraphStyle.alignment = NSTextAlignmentLeft;
[self.titleString drawWithRect:CGRectMake(xOffset, yOffset, titleLabelSize.width, titleLabelSize.height)
options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingTruncatesLastVisibleLine
attributes:@{ NSParagraphStyleAttributeName:paragraphStyle}
context:nil];
One possibility:
Another possibility:
上一篇: 自定义UILabel文本对齐
下一篇: 如何在段落中对齐UILabel文本