0

ビュー コントローラーを作成し、frame.y を 80 に設定しました。後で、モーダル VC が終了したときに別のモーダル ビュー コントローラーを表示する必要がviewWillAppearあり、最初のビュー コントローラーの が呼び出され、frame.y が 0 に戻されます。

この動作を防ぐことはできますか? viewWillAppearframe.y を 80 にリセットできることはわかっていますが、もっとスマートな方法はありますか?

4

1 に答える 1

0

これは、AutoLayout が原因で発生している可能性があります... NSLogging を試して、ViewDidAppear が呼び出されたとき、または呼び出された後に変数が変化するかどうかを確認してください... ViewDidLoad はどうですか? .h ファイルで整数を作成し、ViewDidLoad でそれを frame.y に設定し、ViewDidAppear でゼロにリセットされた後、その整数に戻すだけで済みます...そのようにする必要はありませんxib ファイルのサイズを調整するたびにそのコードを変更する手間を心配する必要はありません。

于 2013-01-08T05:38:00.287 に答える