Ответ 1
Только что нашел проблему, мой numberOfLines
был все еще в 1. После установки его в 0 он отлично работает.
У меня есть длинная текстовая строка (включая \n
символы новой строки), которые я передаю на дисплей UILabel
для отображения. UILabel
динамически настроен для обеспечения достаточного пространства для текста.
Мой код выглядит следующим образом:
myText = [NSString stringWithFormat:@"%@some text: %@ \n \n %@", myText, moreText1, moreText2];
NSLog(@"%@", myText);
myLabelSize = [vLabelText sizeWithFont:[UIFont fontWithName:@"Helvetica" size:(15.0)] constrainedToSize:cMaxLabelSize lineBreakMode:UILineBreakModeWordWrap];
UILabel *lBody = [[UILabel alloc] initWithFrame:CGRectMake(cFromLeft, vFromTop, vLabelSize.width, vLabelSize.height)];
lBody.font = [UIFont fontWithName:@"Helvetica" size:(15.0)];
lBody.lineBreakMode = UILineBreakModeWordWrap;
lBody.textAlignment = UITextAlignmentLeft;
lBody.backgroundColor = [UIColor cyanColor];
[myScrollView addSubview:lBody];
lBody.text = vLabelText;
Моя проблема в том, что текст не обертывается, а обрезается после первой строки. Заголовки \n
игнорируются.
Только что нашел проблему, мой numberOfLines
был все еще в 1. После установки его в 0 он отлично работает.
Может быть, это будет полезно - поскольку некоторые строки устарели сейчас
lBody.lineBreakMode = NSLineBreakByCharWrapping;
lBody.textAlignment = NSTextAlignmentLeft;
и, конечно, lBody.numberOfLines
должно быть больше 1 (1 - значение по умолчанию)