Установите высоту UITextView из события viewWillAppear UIViewController - PullRequest
0 голосов
/ 22 декабря 2010

Я пытаюсь установить высоту UITextView из события viewWillAppear UIViewController, вот код:

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];

    textView.text = blah blah...
    textView.frame = CGRectMake(textView.frame.origin.x, textView.frame.origin.y,
      textView.frame.size.width, textView.frame.size.height-20);
}

Тем не менее, кажется, что он игнорирует мой размер, как будто после вызова этого события текстовое представление изменяется другим способом.

Что я делаю не так? Есть ли хороший способ сделать это?

Спасибо

-edit-

Получил работу, поместив код в мой viewDidAppear вместо viewWillAppear. Так что теперь это работает.

Хотя я озадачен, почему мне нужно это сделать (убрать 20 пикселей снизу) - я имею в виду, не должен ли он изменить размер для автоматического заполнения? Почему размер слишком велик до 20px? Там внизу есть панель вкладок и вверху навигационная панель. Это смущает?

Ответы [ 3 ]

2 голосов
/ 22 декабря 2010

Простой, но очевидный вопрос: изменится ли текст, другими словами, подключен ли выход в IB?

СОВЕТ JUSTA: посмотрите на использование вспомогательных функций для CGRect, таких как:

textView.frame = CGRectInset(textView.frame, 0, 20);
1 голос
/ 22 декабря 2010

В приложении только с этим кодом и одним TextView изменение размера происходит, как и ожидалось.Так что ... это определенно что-то еще в вашем приложении.

Возможно, вы ссылаетесь на свойство contentsize или что-то еще в вашем viewDidAppear?

0 голосов
/ 23 декабря 2010

Получилось, поместив код в мой viewDidAppear вместо viewWillAppear. Так что теперь это работает.

Хотя я озадачен, почему мне нужно это сделать (убрать 20 пикселей снизу) - я имею в виду, не должен ли он изменить размер для автоматического заполнения? Почему размер слишком велик до 20px? Внизу есть панель вкладок и вверху навигационная панель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...