Нужен правильный текст Alignemnt в UILabel из Dynamic Height iphone - PullRequest
1 голос
/ 10 февраля 2012

У меня есть UILabel с динамической высотой. Но когда на моем ярлыке меньше символов, содержимое uilabel выровнено правильно. Но если символов больше, выравнивание контента меняется. Пожалуйста, смотрите следующие скриншоты

enter image description here

enter image description here

Как показано на изображениях выше, выравнивание текста сдвигается вниз по словам. Вот мой код

  - (void)viewDidLoad
{
    [super viewDidLoad];
    NSString *lognString = @"HAAAasfkjfg;jpgijopfadsgdfk;glsdfkls;gja;sjgasd;kjfgasod;fjals;dkfj kl;asddfjs;aipsdfj;asdjfs";

    CGRect frame = label.frame;

    label.numberOfLines = 0;

    label.textAlignment = UITextAlignmentLeft;
    label.lineBreakMode = UILineBreakModeWordWrap;
    label.baselineAdjustment = UIBaselineAdjustmentNone;

    frame.size.height = [self calculateHeightOfTextFromWidth:lognString font:[UIFont systemFontOfSize:20.0f] width:210.0 mode:UILineBreakModeWordWrap];
    label.frame = frame;

    label.text = lognString;
}

-(float) calculateHeightOfTextFromWidth:(NSString*)text   font:(UIFont*)withFont  width:(float)width mode:(UILineBreakMode)lineBreakMode
{

    CGSize suggestedSize = [text sizeWithFont:withFont constrainedToSize:CGSizeMake(width, FLT_MAX) lineBreakMode:lineBreakMode];

    return suggestedSize.height;
}

Пожалуйста, игнорируйте текст в UILable, так как это пример приложения Любая помощь очень ценится. Спасибо

...