8

私は Xcode の初心者で、自動レイアウトで ios6 を使用しています。

uiviewcontroller を次から回転させたい:

ここに画像の説明を入力

に:

ここに画像の説明を入力

ボトムバーが回転しないようにしたいです。Apple のカメラ アプリの回転と非常によく似たものですが、問題はすべてが回転することです。

私はいくつかのコードを入れようとしました

-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{   
    // [Bar setTransform:CGAffineTransformMakeRotation(M_PI / -2.0)];
    // [Bar setTranslatesAutoresizingMaskIntoConstraints:YES];
}
4

2 に答える 2

3

IBでそれを達成する方法はわかりませんが、コードを介して特定の制約を追加することでそれを行うことができます:

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
  if (UIInterfaceOrientationIsPortrait(toInterfaceOrientation)) {
    [self.view removeConstraints:landscapeConstraints];
  } else {
    [self.view addConstraints:landscapeConstraints];
  }
}
于 2013-02-24T18:20:00.613 に答える
-1

まず、ビューが実際に回転していると確信していますか?

その場合、緑色のビューの下部をそのスーパービューの下部に固定します。これは、Interface Builder で実行できるはずです。緑色のビューを選択し、ストーリーボード ファイルの下部 (中央のファイル) にある [制約] ボタンをクリックします。 制約追加ボタン

次に、下の画像に示すように、[スーパービューへの下部スペース] を選択します。 一番下のスペースをスーパービューに固定する

これにより、「このビューの下部を常にそのスーパービューの下部に固定する」という制約が設定されます。そうすることで、探している結果が得られるはずです。簡単なサンプルプロジェクトでセットアップしました。縦向きと横向きのビューはそれぞれ次のようになります。

肖像画 風景

于 2013-01-18T21:24:15.390 に答える