私のプロジェクトには本当に奇妙なバグがあります。私はUIScrollView
を私の大きな、大きな視点として持っています。その中にはUIViewController
(UITableViewController
ではない)のインスタンス変数とその他のUIButtons
があります。ビューコントローラのビューフレームをCGRectMake(0, 64, 320, 388)
に設定しました。上にタブバーが表示されています(まだ機能していません)。最初はうまくいきましたが、modalViewController
を表示して却下したら(UIViewController
を再読み込みします)、UIViewController
のビューを画面の上部にプッシュします(デフォルトではCGRectMake(0, 0, 320, 460)
に設定されていますが私はwantsFullScreenLayout
NO
に設定して、それが今CGRectMake(0, 0, 320, 388)
に設定しますUIViewController自体がviewWillAppearとviewDidAppearの間でサイズ変更されていますか?
私はviewWillAppear
とviewDidAppear
の間のどこかに、この問題を追跡してきました。ここに私の正確なログがmodalViewController
を却下した後、次のとおりです。。
2011- 05-06 11:08:39.974キャンパス[1570:207]フレームは0.000000,64.000000,320.000000,388.000です000(viewWillAppear)
2011-05-06 11:08:40.378キャンパス[1570:207]フレームは0.000000、0.000000、320.000000、388.000000(viewDidAppear)
あなたが見ることができるように、フレームがで罰金ですではなく、viewDidAppear
にあります。
私はそれを修正しようとする、次のことをやった:
- 、loadView
で所望のフレームを設定しviewDidLoad
、viewWillAppear
、およびviewDidAppear
。
- wantsFullScreenLayout
をNO
に設定してください。
- 私のメソッドオーバーライドで私の[super viewWillAppear:]
と[super viewDidAppear:]
呼び出しを殺しました。
どうすればいいですか?!?!?
誰がモーダルビューコントローラを提示していますか? – diatrevolo
自分自身のサイズを変更しているUIViewController – aopsfan