LoginSignup
2
2

More than 5 years have passed since last update.

AutoLayoutを使ってないのに「Unable to simultaneously satisfy constraints」のエラーメッセージが出て困った話

Last updated at Posted at 2016-02-28

最初に

アプリ作ってて原因がわからずはまったことがありました。それがネットで調べても見つけることができず、結局自力で解決したので他の人のためになれば、とまとめてみます。

困った困った

お馴染みのよくあるエラー
image

AutoLayoutを使っていて、上のキャプチャのように「Unable to simultaneously satisfy constraints.」というエラーが出ることは皆さんも経験があると思います。これは単純に、同時に満たすことのできない制約をAutoLayoutで設定してしまっていることが原因なのもご存知だと思います。
AutoLayoutを使ってないのに、このエラーが出ることがありその解消にとても時間がかかってしまいました。ネットで調べてもAutoLayoutに絡んだ話しか出てこず(-_-;)
これは僕のようなひよっこiOSエンジニアにはつらい。。

原因

原因を結論から言うと、Macをテザリングでネットに繋げてることが原因。
iPhone実機の画面上部に表示されてる青いバーが原因です。
テザリングをやめると「Unable to simultaneously satisfy constraints」のエラーが出てきません。シミュレーターでも出ません。なんかときたまこのエラー出てるな、AutoLayout使ってないのに変だな、まぁ後で直そっか。で放置しちゃってたのですが、今日調べてみたらこの原因を発見しました。
詳しくは見てないですが、青いバーの下からアプリの表示が始まってるので、上か下のバーが本来ある位置に陣取れなくてエラー出してるんでしょうね。

image

対応方法

単純に、テザリングの時はエラーが出ても気にしないようにすればいいですね(^O^)

時間があったら調べたいこと

テザリングを使っていて、アプリの構造がどういう時にはこのエラーが出てしまうのか。今回使ってるアプリは、Tabbed ApplicationとNavigation Controllerを使ってるのでその辺に関係がありそうなので、ここは要調査です。

2
2
1

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
2
2