2015-03-28 3 views
0

Я получаю черный патч частично на экране. Его UIView, и это происходит только тогда, когда устройство находится в ландшафтном режиме. В портрете он отлично работает.Изменение размера UIView в iOS

Actual скриншот на IPad 2: (Проверьте черный патч) enter image description here

Вот мой взгляд иерархия в Xcode: (Пожалуйста, проверьте UIView выделен Это один, который не полностью растягивается до. ширина устройства) enter image description here

Будучи новичком в разработке iOS, я не уверен, где это происходит. Будет ли это из-за неправильных размеров self.view?

Это, как я определяю self.view

CGRect deviceDimensions = [[UIScreen mainScreen] applicationFrame]; 
self.view = [[UIView alloc] initWithFrame:deviceDimensions]; 

Я попытался явно устанавливая ширину (только для отладки) следующим образом:

CGRect deviceDimensions = [[UIScreen mainScreen] applicationFrame]; 
deviceDimensions.size.width = 768; 
self.view = [[UIView alloc] initWithFrame:deviceDimensions]; 

, но до сих пор его показ же.

устройства: IPad 2 - Размер экрана: 1024x768 IOS 8,2 Xcode v6.2

Спасибо.

ответ

0

Автоматическая компоновка. Это зверь инструмента, но для того, чтобы убрать основы, требуется несколько минут. Выберите вид в IB, а также добавить ширину и высоту ограничения на ваш взгляд, так как: enter image description here

Если вы предпочитаете код, Взгляните на имущество autoresizingMask:

-(BOOL)shouldAutorotate 
{ 
    UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation]; 
    if (orientation != UIInterfaceLandscape) { 
[view.superview setAutoresizesSubviews:YES]; 
    return YES; 
    } 
} 
Смежные вопросы