我曾在UILabel工作过.但不推荐使用setLineBreakMode.
我一直在使用NSAttributedString.
但是UILabel setLineBreakMode是
之后,UILabel setNumberOfLines else不起作用.
我一直在使用NSAttributedString.
但是UILabel setLineBreakMode是
之后,UILabel setNumberOfLines else不起作用.
之前:
- UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(42.0f,10.0f,275.0f,50.0f)];
- label.text = @"XXXXXX";
- memoLabel.textAlignment = UITextAlignmentLeft;
- memoLabel.numberOfLines = 2;
- memoLabel.lineBreakMode = UILineBreakModeTailTruncation;
- memoLabel.font = [UIFont systemFontOfSize:11];
- memoLabel.backgroundColor = [UIColor clearColor];
IOS 6之后:
- NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
- paragraphStyle.lineBreakMode = NSLineBreakByWordWrapping;
- paragraphStyle.alignment = NSTextAlignmentLeft;
- NSAttributedString *string
- = [[NSAttributedString alloc] initWithString:text
- attributes:[NSDictionary
- dictionaryWithObjectsAndKeys:[UIFont systemFontOfSize:11],NSFontAttributeName,paragraphStyle,NSParagraphStyleAttributeName,nil]];
- [paragraphStyle release];
- UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(42.0f,50.0f)];
- label.attributedText = string;
- [string relase];