Краткий ответ: невозможно.
Длинный ответ: просто верните, что вы делаете только портрет, и поверните вид самостоятельно.
Получить уведомления о вращении (поместите его в viewDidAppear или что-то в этом роде):
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(rotationChange:)
name:UIDeviceOrientationDidChangeNotification
object:nil];
Затем выполните ротацию в "revolutionChange:" (пример веб-просмотра здесь):
- (void)rotationChange:(NSNotification *)notification {
UIDeviceOrientation o = [[UIDevice currentDevice] orientation];
CGFloat rotation;
[self.webView setTransform:CGAffineTransformIdentity];
switch (o) {
case UIDeviceOrientationPortrait:
rotation = 0;
case UIDeviceOrientationPortraitUpsideDown:
rotation = 180;
...
}
[[UIApplication sharedApplication] setStatusBarOrientation:o animated:YES];
CGAffineTransform transform = CGAffineTransformIdentity;
transform = CGAffineTransformRotate(transform, rotation * (M_PI / 180.0f));
[self.webView setTransform:transform];
}
РЕДАКТИРОВАТЬ: не забудьте отключить уведомления, если они вам не нужны (как в "viewDidDisappear:")
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIDeviceOrientationDidChangeNotification object:nil];
[[UIDevice currentDevice] endGeneratingDeviceOrientationNotifications];