1

[[UIDevice currentDevice] setOrientation:UIDeviceOrientationPortrait];誰かがあなたのアプリがAppleによって拒否されることを確認できますか?

良い代替品はありますか?

4

4 に答える 4

4

[[UIDevice currentDevice] setOrientation:UIInterfaceOrientation] はプライベート API であり、署名が読み取り専用であることがわかります (こちらを参照)。

デバイスの向きを縦またはその他のモードに設定する場合は、shouldAutorotateToInterfaceOrientation をオーバーライドする必要があります。

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return (interfaceOrientation == UIDeviceOrientationPortrait);
}
于 2010-03-05T10:51:29.360 に答える
1

はい、拒否されます。

フレームを変更してキー ウィンドウに変換を適用し、ステータス バーの向き (パブリック) を変更して、向きの変更をシミュレートできます。

于 2010-03-05T13:30:51.657 に答える
0

このコードを試すことができます。それは私のアプリで完璧に動作します

UIApplication* application = [UIApplication sharedApplication];
if (application.statusBarOrientation != UIInterfaceOrientationPortrait)
{
    AppDelegate* app = [[UIApplication sharedApplication] delegate];
    UIViewController *c = [[UIViewController alloc]init];
    [app.viewController presentModalViewController:c animated:NO];
    [app.viewController dismissModalViewControllerAnimated:NO];
    [c release];
}

ここで、app.viewControllerはアプリのrootViewControllerです。

于 2012-02-20T02:23:56.857 に答える
0

アプリの plist に UIInterfaceOrientation を追加できます

于 2010-03-05T13:24:22.053 に答える