【Android Studio】missing constraints in constraint layout のエラーの対処方法

いきなりエラーでコケてるんですけど。

 

 

NSAの山本です。

このエラー、山本が一番最初にアンドロイドスタジオ始めた時、解決方法に辿り着くのに時間かかりました。(検索下手)

Android Studioを始めた最も初期の段階で、高確率で、出ます。

 

ちなみにこのエラー(MissingConstraints)があっても一応ビルド通ります。やめた方が良いと思うけど。

 

 

直す方法

 

レイアウトに赤色でビックリ!が表示されているのがわかります。

「Message」のエラー部分をクリックします。

「Message」ログ自体が表示されていない場合は、右上のアイコンをクリックすると出てきます。

 

This view is not constrained horizontally: at runtime it will jump to the left unless you add a horizontal constraint

The layout editor allows you to place widgets anywhere on the canvas, and it records the current position with designtime attributes (such as layout_editor_absoluteX). These attributes are not applied at runtime, so if you push your layout on a device, the widgets may appear in a different location than shown in the editor. To fix this, make sure a widget has both horizontal and vertical constraints by dragging from the edge connections.

Issue id: MissingConstraints

 

「horizontally(水平方向)のconstraint(制約)がmissingしてます」

「水平方向に固定されてないから、画面内のどこに表示されるかちゃんと設定できてないよ」 ということらしい。めんどいので直訳はしません。

これをしないと、画面内のどこに要素を表示すれば良いのか、コンピュータ側で判断がつかないようです。

 

縦方向(vertical)に1回

横方向(horizontal)に1回

最低でも片側ずつには固定する点をつけるようにしてください!

 

水平方向が固定されていないので、点からドラッグします。

 

びよ~んと伸ばします。

 

Errorが消えました。

縦方向(vertical)が固定されてない場合も同様の方法で直ります。

 

 

このエラーは、親切にもエラーログに説明が書いてあります。

読めば一瞬で解決する系です。(まあ世の中の半数以上のエラーはログに出てるけど)

プログラムの先達、先生は「ログ読めよ」と言います。

しかし、初心者は読み方を知らないし、本来、日本人なら英語なんて読みたくないはずです。

 

 

おわりに

 

 

あまりにも初歩的すぎてQiitaに出ていないこのエラー

それもそのはず、余りにも初歩的すぎるから。

 

Qiitaはプロの料理人、プロかどうかはともかく洗練された料理人の集団です。

洗練された料理人はお箸の持ち方を討議しません。

お箸の持ち方を習うのは赤ちゃんです。

ですが世の中には赤ちゃんはいます。

自分が赤ちゃんであることを恥じないでください。

最初は誰でも赤ちゃんであり、

赤ちゃんが料理の匠になるのです。

お願いだから、雲上に君臨するQiitaの軍神と自分を比べて

「あ、やっぱ俺だめだわw」とか言って辞めないでください。

 

この記事を読んでいる方は初心者の初心者でしょう。

おそらくこの先も散々エラーに悩まされることがあると思いますが、どうかめげずに、続けてください!

実現したい神アプリができるよう、(私は特に何もできないけど)応援してます。まじで。

 

 

記: 2019.01.18

 

これも読んでみませんか