iPadの横向きのビューコントローラで2つの問題が発生しています。
(1)テーブルを保持するポップアップが2つあります。メインビューでの選択を反映するために、テーブルは特定の行にスクロールする必要があります。代わりに、テーブルは一部下にスクロールしますが、実際に選択された行は画面外のままです。
(2)私のアクションシートはすべて幅320です。
Interface Builderでは、すべてのビューが横向きで作成されます。メインウィンドウだけはそうではありませんが、それを変更する方法がわかりません。
構成:起動時に、メインウィンドウとメインビューコントローラービューの次の座標を取得します。
Window frame {{0, 0}, {768, 1024}} mainView frame {{0, 0}, {748, 1024}}
その後の他のすべてのビューは、呼び出されたとき(ロードされたが表示される前)にこれらの座標を表示します。
frame of keysig {{0, 0}, {1024, 768}}
frame of instrumentSelect {{20, 0}, {1024, 768}}
frame of settings {{0, 0}, {467, 300}}
すべてのviewControllerで、次のように応答shouldAutorotateToInterfaceOrientation
します。
return ((interfaceOrientation == UIInterfaceOrientationLandscapeLeft) ||
(interfaceOrientation == UIInterfaceOrientationLandscapeRight));
すべて(ほぼ)期待どおりに機能します。アプリは、2つのランドスケープモードのいずれかで起動します。ビュー(およびビューコントローラ)には、それが属するすべてのものが表示され、タップは画面全体で期待どおりに機能します。しかし、私にはまだ2つの問題があります。
問題1:画面からはみ出すのに十分な長さのテーブルを含む2つのポップアップがあります。テーブルは選択した行までスクロールする必要があります。それらはスクロールします。つまり、行1から視覚的に開始しませんが、選択した行を実際に表示するのに十分なスクロールはしません。
代替テキストhttp://idisk.mac.com/mahboud//Public/keysig.png
代替テキストhttp://idisk.mac.com/mahboud//Public/instrumentlist.png
UITableの内部四角形が間違った番号で作成され、そのまま残っているように見えますが、UITableViewのscrollViewコンテンツ座標の両方を確認したところ、妥当なようでした。
問題2:アクションシートの幅が320であるため、これは問題1に関連していると思います。iPadでは320または480の幅のactionSheetsしか許可されておらず、画面が縦向きであると考えられているためです。 、狭い幅を使用します。
そこにあります。私はまだオリエンテーションの問題に夢中になっているとは信じられません。私は、Appleがランドスケープアプリを簡単に作成できるようにしていないことを誓います。何か案は?