2017-05-14 12 views
4

相対レイアウトを使用してビューを設計するのは、右端、中央、または単に相対的な位置に配置すると効果的です。それは画面サイズが異なると素晴らしいでしょうから、ビューはより広がります。制約レイアウトvs相対レイアウト

制約レイアウトの導入により、私はそれがより強力であり、より多くの柔軟性を与えながら同じ目的を達成することが分かりました。

相対レイアウトが不要になり、常にConstraintに置き換えることができますか?制約ビューを表示せず、代わりに相対レイアウトにするべき状況はありますか?

は、それはあなたがおそらく既に(RelativeLayoutかのLinearLayoutのような)を使用している他のレイアウトよりもはるかに違いはありませんあなた

+1

私の頭の上では、「RelativeLayout」が「ConstraintLayout」が処理できないシナリオは考えられません。具体的な理由がないかぎり、既存の 'RelativeLayout'コードを' ConstraintLayout'に切り替える価値があるのか​​どうか分かりません(例えば、 'RelativeLayout'がたくさんあるためパフォーマンスが悪いスクロールリスト)。 – CommonsWare

+0

ありがとう@CommonsWare、私は新しいプロジェクトを開始しています。私が現在知っていて、以前に使用していた相対レイアウトを使用すべきかどうか、または制約レイアウトをデフォルトで行うべきか、どちらに行くか。あなたのコメントからは、新しいコードベースであるので、私はすぐにcontraintlayoutに行くべきだと思われます。 – Snake

+2

'ConstraintLayout'はあなたに大きな柔軟性を与えるはずです。 「ConstraintLayout」のような場所では、あまり知られていないので、ライブラリのコストは(ライブラリの数が増え、メソッド数が増えるほど)、施設の知識は少なくなります。スタックオーバーフロー、ランダムにサイトを選択します。 :-)私はあなたの状況に最適なことを教えてくれません。 – CommonsWare

答えて

2

ありがとうございます。属性は、相対レイアウトで使用されるものと非常によく似ています。

これは、主に視覚指向のツールとして設計されています。ビジュアルエディタは、開発者がレイアウトとやりとりする主要な方法を意図しています。

この新しいレイアウトの主な目的は、開発者がすぐにランデブするために最適化された複雑なレイアウトを作成できるようにすることです。実際、その目的は、他のレイアウトタイプによって引き起こされるレイアウト階層を減らすことです。

関連する問題