2014-02-21 1 views
-3

У меня есть UITextView, который в портретных размерах шириной 500 пикселей.
Я добавляю его по коду как подвью, но я не могу в viewdidapper получить правильный размер, если приложение открывается в альбомном режиме.
После поворота устройства он работает правильно. Если открыт пейзаж нет. Как я могу рассчитать правильный размер этого текстового поля при открытии пейзажа?Получите правильный размер UIView при открытии Пейзаж

Спасибо

+0

Не могли бы вы разместить код, в котором создается текстовое представление? – Antonio

ответ

-1

Добавить уведомителя в функции viewWillAppear

-(void)viewWillAppear:(BOOL)animated{ 
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(orientationChanged:) name:UIDeviceOrientationDidChangeNotification object:nil]; 
} 

Изменение ориентации уведомляет эту функцию

- (void)orientationChanged:(NSNotification *)notification{ 
[self adjustViewsForOrientation:[[UIApplication sharedApplication] statusBarOrientation]]; 
} 

и рассчитать размер вашего TextView

- (void) adjustViewsForOrientation:(UIInterfaceOrientation) orientation { 

if (orientation == UIInterfaceOrientationPortrait || orientation == UIInterfaceOrientationPortraitUpsideDown) 
{ 
    //calculate the portrait textView size 
} 
else if (orientation == UIInterfaceOrientationLandscapeLeft || orientation == UIInterfaceOrientationLandscapeRight) 
{ 
    //calculate the landscape textView size 
}} 

Я надеюсь, что эта помощь

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

  • Нет связанных вопросов^_^