0

私はiphone5の全画面をカバーするサブビューを持っており、突然ビルドして実行すると、そのフレームは(0,0,320,586)ではなく(0、-40,320,586)になります。だから、なんらかの理由で上に移動するようなものです。現在、ファイルインスペクターで「useautolayout」のチェックを外しています。これにより、私が理解していない厄介な制約事項をすべて取り除くことができます。

制約を有効にする「useautolayout」をチェックするたびに、これで問題が修正され、サブビューがランダムに40ピクセル上に移動しないことに気付きます。

ただし、サブビューを使用してアニメーションを実行しているため、これらの制約を維持できません。サブビューは、制約が有効になっている場合は常に機能しません。

私に何ができる?

4

1 に答える 1

1

いつでも自動レイアウトを使用する場合は、自動レイアウトシステムと制約について読んで学習してください。使用したくない場合は、オフにして使用しないでください。

あなたの場合、単一のビューでそれを取り除きたい場合は、おそらくそのビューからすべての制約を削除するだけで十分です。これは次のように実行できます [view removeConstraints:view.constraints]

自動レイアウトリファレンス

于 2012-11-07T00:00:45.283 に答える