Для того, чтобы сделать то, что вы хотите, вы должны вручную повернуть (и изменить размер) вашего представления.Нет собственности, которую вы можете изменить, чтобы легко делать то, что вы хотите.Ниже приведен код для регистрации событий поворота устройства.
- (void)viewDidLoad {
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(orientationChanged:)
name:UIDeviceOrientationDidChangeNotification object:nil];
//Whenever the device orientation changes, orientationChanged will be called
}
- (void)orientationChanged:(NSNotification *)notification
{
UIDeviceOrientation deviceOrientation = [UIDevice currentDevice].orientation;
//Based upon which orientation the device is in, update your View rotations.
//A simple view.transform = CGAffineTransformMakeRotation(whatever); will work well.
}
Полагаю, вам следует полностью удалить функцию shouldAutoRotateToInterfaceOrientation :.Вы также должны позвонить [[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];
, когда ваш вид выгружается.