Я пытаюсь просмотреть информацию о 3 разных таблицах; Первый. Заголовок Два. Дата выпуска Три. ОписаниеUILabel - выпуск с гибкими размерами и фиксированным размером
Между названием и датой выпуска есть две пустые строки. Иногда, когда название получает более 3 строк, записывается на дату публикации. вот картинка (жирная линия метка даты паба):
, а иногда, когда описание этикетки получить большое количество текста вот что случилось:
это как его должно быть:
так вопросы: 1. Как я могу сохранить фиксированное пространство между заголовком и публикой? (независимо от того, сколько строк заголовок останется между двумя фиксированным пространством) 2. Почему описание перемещается вниз, когда он получает большое количество текста? как я могу исправить его место?
Я просто хочу сохранить пробел между 3 ярлыками независимо от того, сколько строк у каждого есть.
вот мой код до сих пор:
- (void)viewDidLoad
{
[super viewDidLoad];
[_scroller setScrollEnabled:YES];
[_scroller setContentSize:CGSizeMake(320, 600)];
self.lblDescription.text = self.description;
self.lblTitle.text = self.stitle;
self.lblPubDate.text = self.pubDate;
self.lblTitle.numberOfLines = 0;
[self.lblTitle sizeToFit];
self.lblTitle.textAlignment = UITextAlignmentRight;
CGRect titleFram = self.lblTitle.frame;
titleFram = CGRectMake(titleFram.origin.x, titleFram.origin.y, 280, titleFram.size.height);
self.lblTitle.frame = titleFram;
self.lblDescription.numberOfLines = 0;
[self.lblDescription sizeToFit];
[self resizeHeightToFitForLabel:self.lblTitle];
[self resizeHeightToFitForLabel:self.lblDescription];
}
-(void)resizeHeightToFitForLabel:(UILabel *)label
{
CGRect newFrame = label.frame;
newFrame.size.height = [self heightForLabel:label withText:label.text];
label.frame = newFrame;
}
-(CGFloat)heightForLabel:(UILabel *)label withText:(NSString *)text
{
CGSize maximumLabelSize = CGSizeMake(290, FLT_MAX);
CGSize expectedLabelSize = [text sizeWithFont:label.font
constrainedToSize:maximumLabelSize
lineBreakMode:label.lineBreakMode];
return expectedLabelSize.height;
}
, что это лучший способ, чтобы получить это сделать? спасибо ..
все ярлыки выходят из рамок зрения .. только когда им прокручиваю, я вижу их .. pubDate не выравнивается справа, но все выглядит нормально .. как я могу это исправить ? – OshriALM
@OhriALM Я исправил его. См. Обновленный ответ. –
все еще не в порядке .. – OshriALM