iOS 5.1.1では、UIWindow(IBに疲れている)を作成し、そのフレームを[UIScreen mainScreen] .boundsに設定すると、ステータスバーの下にが表示されます。しかし、同じことをiOS 6とすると、ステータスバーのすぐ下の正しい場所に表示されます。しかし、私はiOSの5.1.1のステータスバー下のウィンドウを移動するために、r.origin.y + = 20を挿入した場合iOS:プログラムでUIWindowのプログラムが誤った位置に作成される
CGRect r = [[UIScreen mainScreen] bounds];
self.window = [[UIWindow alloc] initWithFrame: r];
self.detailViewController = [[DetailViewController alloc] init];
self.window.rootViewController = self.detailViewController;
[self.window addSubview: detailViewController.view];
[self.window makeKeyAndVisible];
することは、これが唯一の奇妙取得問題や物事を解決していません。
UIWindowをプログラム作成時にiOSに配置する適切な方法は何ですか?おかげさまで
私は、あなたがIBに戻った場合には、はるかに少ない問題があると確信しています。私は最近、コードでレイアウトの問題を修正しようとしたが、何時間もかかった。私はそれを働かせましたが、後でただのIBで同じことをやろうとしましたが、数回クリックするだけで私の手作業でのコーディングよりもうまくいっていました。私はそれが意図されているツールを使用することが最善であることを学んだ。それ以外の場合は解決しにくいエッジケースに当たってしまいます。 – Brennan