1

ナビゲーション コントローラー スタック上のビュー コントローラーの一部として、Interface Builder を介して UIScrollView を追加して配置しました。新しいビュー コントローラーをスタックにプッシュしてから、その新しいビュー コントローラーをポップすると、元のビューの UIScrollView が正確に 52 ピクセル上に移動します。

これはデバイス上でのみ発生し、シミュレーターでは発生しません。

これを引き起こしている可能性のあるアイデアはありますか?viewWillAppear/viewWillAppear で再配置を呼び出すことでさかのぼって修正できますが、何らかの理由でこれでもうまくいかない場合があるため、根本的な原因を修正したいと考えています。ありがとう!

コメントに応じて注意してください: プッシュされたビュー コントローラーでナビゲーション バーを非表示にしていますが、元のビュー コントローラーでは非表示にしていません。また、元のビュー コントローラーには他にも UIView 要素がいくつかありますが、位置がずれているのは UIScrollView だけであることに注意してください。

更新: プッシュされたビュー コントローラーでナビゲーション バーを非表示にしないことは、UIScrollView の問題には影響しませんが、提案、コメントに感謝します。

4

1 に答える 1

0

修正: ナビゲーション バーがビュー コントローラーで非表示になっていて、サブビュー (Interface Builder を介して追加したもの) が予期しない方法で自動的に再配置されないようにする場合は、サブビューのストラットが固定されるように設定されていることを確認してください。 .

于 2012-06-30T18:23:03.433 に答える