Проблема с ориентацией устройства и UIView при запуске
Я работаю над проектом, в котором, когда пользователь нажмет кнопку, будет воспроизведено видео, я должен запрограммировать это приложение для всех направлений. Я добавил изображения в качестве фона для кнопок, учитывая расположение этих кнопок в зависимости от размера суперпредставления, например:
button1.frame = CGRectMake(0.15 * (self.view.frame.size.width),0.15 * (self.view.frame.size.height), 0.2 * (self.view.frame.size.width), 0.2 * (self.view.frame.size.height));
Когда я запускаю приложение в портретнойс видом в порядке, а также, когда я вращаюсь, он работает нормально:
Но если я запускаю свое приложение в альбомной ориентации, оно показывает вид, подобный следующему:
v использовал много кода для изменения размера представлений и подпредставлений:
-(void) viewDidLoad
{
...
self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleBottomMargin |
UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
[self.view setAutoresizesSubviews:YES];
button1.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleBottomMargin |
UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
...
}
и в didRotateFromInterfaceOrientation () и willRotateToInterfaceOrientation (): I '
...
self.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleBottomMargin |
UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
[self.view setAutoresizesSubviews:YES];
button1.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleBottomMargin |
UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin;
...
v также указал YES для возврата в shouldAutoRotate (). Чего мне здесь не хватает? Любая помощь будет оценена.