0

コードで直接レイアウトを作成するiOSアプリを作成しています。私はxibの使用に慣れていますが、それはこのプロジェクトのオプションではありません。画面の下/側面に固定された要素を配置する方法がわかりません。私が探している解決策は、ポートレートの下部に配置しますが、回転すると右側に固定されます(カメラアプリの下部のバーの動作と非常によく似ています)。それは縦向きで画面の下部に正しくあります、問題は回転にあります

また、iOS 5用にビルドしているので、自動レイアウトを使用しないソリューションが必要です。

これが私がこれまでに持っているコードで、横向きに回転します。アイデアは、90回転(動作中)してから、ある種のマスクを使用して左側に固定することです。ここでどこが間違っているのですか?このようなオブジェクトを固定することさえ可能ですか?

myView.autoresizingMask = UIViewAutoresizingFlexibleHeight|UIViewAutoresizingFlexibleLeftMargin;


CGAffineTransform rotate90 = CGAffineTransformMakeRotation(degreesToRadians(-90));

myView.transform = rotate90;

スケッチ例

4

2 に答える 2

1

これを行うには、を使用する必要がありますNSLayoutConstraints

制約のコーディングについてはよくわかりません。詳細については、 NSLayoutConstraintを参照してください。

NSLayoutConstraintsに関するWWDC2012セッションビデオ

于 2012-11-08T17:09:50.860 に答える
1

バーではなく、バー内の景色を扱ってください。

これを試して :

1)以下を使用してアプリが自動回転しないようにします。

//For iOS 5 and lower
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
    return NO;
}

//For iOS 6 and upper
- (BOOL)shouldAutorotate {
    return NO;
}

2)バー自体ではなく、バー内のビューを回転させます

それがあなたを助けることを願っています。

于 2012-11-08T16:38:59.840 に答える