2014-12-18 2 views
0

Я новичок в разработке iOS
, когда UITextView динамически изменяет свою высоту (например, пользователь вводит несколько строк в UITextView), как настроить позицию UILabel (которая ниже UITextView) относительно высоты UITextViewНастройка UILabel в соответствии с изменением высоты UITextview

enter image description here

 after text entered by user 

enter image description here

+0

Когда пользователь вводит несколько строк, рамка UItextView не изменяется, и вы можете видеть весь текст, прокручивая его внутри. Так что вы хотите точно? Снимок экрана будет лучше для понимания – milanpanchal

+0

Вы хотите расширять ярлык? –

+0

да, вы правы. но я хочу увеличить высоту UITextview в соответствии с содержанием. –

ответ

1

Если вы не используете автоматическую раскладку, вы можете это сделать как это

CGRect rect = self.lbl.frame; 
rect.origin.y = self.txtVw.frame.origin.y + self.txtVw.frame.size.height; 
self.lbl.frame = rect; 
0

Или, если вы используете макеты автомобилей, подкласс UITextView и методы коррекции пары в нем, как это:

- (void) layoutSubviews 
{ 
    [super layoutSubviews]; 

    if (!CGSizeEqualToSize(self.bounds.size, [self intrinsicContentSize])) { 
     [self invalidateIntrinsicContentSize]; 
    } 
} 

- (CGSize)intrinsicContentSize 
{ 
    CGFloat boundWidth = [[UIApplication sharedApplication] keyWindow].frame.size.width; 
    boundWidth = MIN(boundWidth, self.bounds.size.width); 
    CGSize intrinsicContentSize; 
    intrinsicContentSize = [self sizeThatFits:CGSizeMake(boundWidth, FLT_MAX)]; 
    return intrinsicContentSize; 
} 

Не забудьте назначить свой класс для просмотра текста в Interface Builder и конечно, правильно установили все остальные ограничения. Я думаю, что я нашел это решение где-то на StackOverflow сам некоторое время назад, извините, не могу предоставить ссылку на исходный ответ.

Смежные вопросы