6

iPhone アプリで自動レイアウトを使用しており、UIScrollView. アプリの実行中にいくつかの時点でスクロール ビューのコンテンツ サイズを変更する必要があります (viewWillAppear他の場所で提案されているように、コンテンツ サイズを設定しても意味がありません)。

変更すると、おそらく自動レイアウトの制約に違反するため、サブビューが飛び跳ねます。

では、自動レイアウトを有効にしてスクロールビューのコンテンツ サイズを変更するにはどうすればよいでしょうか?

ありがとう。

4

2 に答える 2

14

私はこれと同じ問題を抱えていましたが、これが最終的な解決策ではないことはわかっていますが、今のところ、これを で呼び出すのではなくviewWillLayoutSubviews、コードを内部viewDidLayoutSubviewsに配置することで、viewController がデフォルトのビジネスを実行した後に contentSize を設定できました:)

それが役立つことを願っています。

于 2012-11-20T22:25:38.310 に答える
0

でコードをテストしますviewWillLayoutSubviews。アップルは次のように述べています。

ビューの境界が変更されると、ビューはそのサブビューの位置を調整します。ビューがサブビューをレイアウトする前に、View Controller でこのメソッドをオーバーライドして変更を加えることができます。このメソッドのデフォルトの実装は何もしません。

UIViewController クラス リファレンス

于 2012-11-18T12:46:07.737 に答える