8

私のでは、向きが変わった場合に、どのサブビューを表示するか、どのサブビューを前面に表示するか、どのサブビューを非表示にするかなどを整理するviewController.view作業を行っています。viewWillLayoutSubviews

しかし、ビューにボタンがあり、viewWillLayoutSubviews押されるたびに呼び出されます。これはなぜでしょうか?Apple docs によると、viewWillLayoutSubviewsビューの境界が変更された場合にのみ呼び出されます。

その結果、ボタンを押すだけでビューが再配置されますが、デバイスをまったく回転させておらず、view.bounds または view.frame を操作していません。

4

2 に答える 2

1

andrewsがboolを取り、ボタンを押してTRUEに設定し、layoutSubviewsでそれをチェックして、それがtrueかfalseかを操作することをお勧めします。あなたは私がやろうとしていることを理解しています。

于 2012-09-14T06:26:28.187 に答える
0

奇妙なことに、ボタンのアクション用のメソッドと、- (void)viewWillLayoutSubviewsボタンを押したときに呼び出されないメソッドの 2 つのメソッドだけのデモ- (void)viewWillLayoutSubviewsを作成しました。コードに間違いがあるのではないでしょうか?

于 2012-09-14T06:01:56.727 に答える