3
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Swift] AutoLayoutのエラーログをしつかり読み解こう!

Last updated at Posted at 2021-03-26

本記事では、AutoLayoutでエラーログが発生した際のアプローチについてご紹介します。

発生した問題

AutoLayoutでレイアウトに制約を設けて実装した際、以下のエラーログが発生しました。

test.png

この際にやるべきアプローチを紹介します。

アプローチ: ログを読み解く

以下をご覧ください。

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x6000035d9f90 [対象のUIやレイアウト箇所]  (active)>

Will attempt to recover by breaking constraintの部分は、「制約を取り除いて表示している」ことを意味しています。
そのため、[対象のUIやレイアウト箇所]の部分について、もう一度制約を見直し再構築することで上記のようなエラーログが解消できるということになります。

(自分の場合は、冗長な制約があると怒られていたため消すことで解消できました。)

また、どのUIのエラーログがわからない場合があります。
その時は、width == 382などを参考にすると良いです。

さらに、Why The Failure, Auto Layout?というサイトにエラーログを入力することで、わかりやすく可視化してもらえます。

スクリーンショット 2021-03-26 21.09.31.png
スクリーンショット 2021-03-26 21.07.34.png

最後に

今回はAutoLayoutのエラーログが発生した時のアプローチについて紹介しました。
他の記事でも別のやり方が載っているのでそちらも参考にしてみてください。

参考資料

3
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?