私はStackOverflowには新しく、またobjective-cには新しいです。スタートアップの方向が間違っています
私は今何をすべきかのヒントを与える何かを見つけるために数週間を探してみましたが、質問をしなくてもこれを通過することはできません。シンプルであるように感じますが...
"rootView"コントローラのローテーションに問題があります。私はナビゲーションコントローラを使用することに決めた前に、それはランドスケープで表示されるはずです。シミュレーターは正しい向きで表示されますが、テキストが下から上、横に読み込まれるように、90度回転したビューが読み込まれていますので、頭を左に撫でる必要があります。ビューの一番左の部分は表示されますが、残りの部分は画面の上部に表示されます。これは大規模なプログラムです(私は、一般的には目的-cでそれを見つけていますが、それにも関わらず楽しんでいます...)が、重要なコード領域であると私が考えるものの要点は次のとおりです。
appDelegateでは、実装に続いて
// .h file:
UIWindow *window;
wordHelper3ViewController *viewController;
UINavigationController *navigationController;
:私は窓、私のrootViewcontroller、およびからNavControllerを作成
//.m file
- (BOOL)application:(UIApplication *)applicationdidFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Hide status bar
application.statusBarHidden = YES;
// --- Add the view controller's view to the window and display.
[window addSubview:viewController.view];
[window addSubview:navigationController.view];
[window makeKeyAndVisible];
return YES;
}
は、その後、私はのdeallocでこれらのすべてを解放します。私のルートビューで
、私はこれをやっている:
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
if (interfaceOrientation == UIInterfaceOrientationLandscapeRight){
return YES;
} else {
return NO;
}
}
私が起こっていたかを確認するには、次のように実装し、私はすぐに起動時にログメッセージを取得しています:
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation{
if (fromInterfaceOrientation == UIInterfaceOrientationLandscapeLeft || fromInterfaceOrientation == UIInterfaceOrientationLandscapeRight) {
NSLog(@"didRotate...");
}
}
を
これ以外にも、自分のコード内でビューに影響を与えるものは何もしていないと思います。ここで、InterfaceBuilderへ:
rootViewとナビゲーションコントローラの両方の属性インスペクタでは、向きが横向きに設定されています。参照元のアウトレットのrootViewの場合、「ビュー」はファイルの所有者に設定されます。ビュー(touchUpInside)にアタッチされたアクションもあります。ユーザーがバックグラウンドで任意の場所をクリックすると、FirstResponderをresignしたかったので、クラスをUIButtonに変更しました。
navigationControllerの場合は、「アウトレットの参照」の下に、navigationControllerから私のappDelegateへの接続が表示されます。
メインウィンドウxibでは、nav contollerがリストに表示され、ビューコントローラがそのサブビューとして表示されます。
viewcontrollerもメインウィンドウのオブジェクトリストに表示されます。
私にとって目立つのは、ウィンドウオブジェクトをダブルクリックすると、ITがポートレートモードで視覚的に表示されることです。
誰にもアイデアはありますか?
その迷惑な、しかし私はすべての「ウィンドウ」で1つのサブビューを持つ、その後、(このケースでのViewController)その1つのサブビューを通じて、すべてを制御することにより、姿勢の問題を解決してきましたが、あなたはスクリーンショットを投稿気にしてくださいあなたの説明は少し不明です。スクリーンショットに取り組んで – Moshe
は... – pereirap
スクリーンショットは私のGoogleドキュメントページに掲載されている - ここにリンクです: https://docs.google.com/document/d/1kZMPTsqVT6yAdxCa1HPXu0jhZnDa4QOsJ3p9_wqYs5Q/edit?hl=en&authkey=CJf58PEG – pereirap