0

私は iPad アプリケーションを持っており、それはシングル ビュー アプリケーションです。そのアプリケーションは、横向きと縦向きの両方のビューをサポートします。しかし、ボタンがあり、それが押された場合、その画面で回転を止めたいと思います。その後、もう一度押して、もう一度回転を有効にしたいので、ユーザーはもう一度回転する必要があります。どうやってやるの?

4

3 に答える 3

2

Apple の Web サイトから: 「自動回転を一時的に無効にしたい場合は、これを行うために方向マスクを操作しないでください。代わりに、最上位のビュー コントローラーで shouldAutorotate メソッドをオーバーライドします。このメソッドは、自動回転を実行する前に呼び出されます。NO が返された場合は、回転が抑えられます。」

于 2013-11-03T19:15:22.697 に答える
1

ビュー コントローラーには shouldAutorotate 関数があるため、ブール変数を使用するだけです (この例では、次のような「allowAutoRotation」)。

-(BOOL)shouldAutorotate
{
    return allowAutoRotation;
}
于 2013-11-03T19:15:39.503 に答える
1

サポートする必要があるプラットフォームによって異なります。私としてではなく、理想的なケースが1つだけある場合:

#pragma mark -
#pragma mark allow rotations
// iOS 5
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return YES;
}
// iOS6
- (BOOL)shouldAutorotate
{
    return YES;
}
// iOS6
- (NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskAll;
}

そのコードは回転することができます。ボタン アクションを処理し、変数をチェックして、それらの許可された状態を返す

于 2013-11-03T19:15:58.073 に答える