2017-08-15 1 views

答えて

3

「このアプリケーションは、バックグラウンドスレッドから自動レイアウトエンジンを変更しています」という主な問題は、実際の問題が発生してから長い時間が経過したように見えることです。これによりトラブルシューティングが非常に難しくなります。

私は3つの記号的なブレークポイントを作成することで問題を解決することができました。

デバッグ>ブレークポイント>はシンボリックブレークポイントを作成します...

ブレークポイント1:

  • 記号:-[UIView setNeedsLayout]

  • 条件:!(BOOL)[NSThread isMainThread]

ブレークポイント2:

  • 記号:-[UIView layoutIfNeeded]

  • 条件:!(BOOL)[NSThread isMainThread]

ブレークポイント3:

  • 記号:-[UIView updateConstraintsIfNeeded]

  • 条件:!(BOOL)[NSThread isMainThread]

これらのブレークポイントを使用すると、簡単にあなたが間違って非メインスレッド上でUIのメソッドを呼び出して、実際のライン上で休憩を取得することができます。

関連する問題

 関連する問題