:
を私はポートレート/ランドスケープモードのために特定のXIBファイルを使用したくない 場所のオブジェクトが異なっコード
を使用して
は、私は別の方向に異なるXIBを使用しようとしている時間の良い量を費やす必要がありますが、ここで契約です:あなたは風景に回転したときに、あなたヘクタール、あなたがポートレートでのUITextFieldを持っている場合)
1ポートレートモードのテキストが風景などで同じであることを確認してください。あなたはすべてのオブジェクトのためにそれをしなければなりません。
2)あなたがポイント1を見ていないとしても、私は決して2つのxibsソリューションをうまく実装できませんでした。私はあなたがそれを行うことができないと言っているわけではありません、私は私の経験から、私はそれを達成できないと言っています。だから、
、あなたは少なくとも1つのXIBソリューションをやって、私は少しを説明できると思われる場合:
-(void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)orientation{
}
-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{
NSLog(@"My view will rotate");
if (UIInterfaceOrientationIsPortrait(toInterfaceOrientation)) {
[self viewsPositionPortrait];
} else if (UIInterfaceOrientationIsLandscape(toInterfaceOrientation)){
[self viewsPositionLandScape];
}
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
NSLog(@"Register should rotate");
return YES;
}
-(void)viewsPositionPortrait{
//肖像回転 oneOfMyviews.frame = CGRectMakeのためのあなたの「oneOfmyViews」のためのフレームを作成します。 (...、....、...、...); }
-(void)buttonsPositionLandScape{
//風景回転 oneOfMyviews.frame = CGRectMake(...、...、...のためのあなたの "oneOfmyViews" のためのフレームを作成し、...);
}
viewPositionメソッドで、ビューのフレームを定義できます。あなたは何を勝つ?
1)コードを消去してください。
2)美しいトランジション。
3)スクロールビューのコンテンツサイズを簡単に指定します。
あなたのUIViews => CustomViewController => UIScrollViewの回転に問題がありますか。 次のようなことができます:
1)CustomViewController内のUIViewのカスタムビュー(上記のメソッド)で全く同じことを行います。あなたは次の操作を行うことができますCustomViewControllersを持つビューで
2):
-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration{
//(everything that i posted above)
[myCustomViewController willRotateToInterfaceOrientation:toInterfaceOrientation duration:duration];
}
この方法で、あなたのcustomViewControllerの回転の内側UIViewsを行います。最後のヒント:自動サイズ変更 - サブビューを無効にしてUIViewからすべての自動サイズを取り出します(フレームを個別に定義するため)。
これは非常に役に立ちましたが、私はこの現在のアプリで2つのxibファイルで終了しました。私の問題は、ローカライズするのが非常に難しく、xibをローカライズするのがはるかに簡単だということでした。私はそれが不自然な回転を引き起こすのではないかと心配しましたが、まったく同じように見えます。 – Niv