web-dev-qa-db-ja.com

ビューの階層を減らすために新しいAndroid Constraint Layoutを使用する方法

今年のGoogle I/Oで最近発表された新しいConstraint Layoutの使用方法についてご意見はありますか?

32
Bogdan M.

既存のレイアウトリソースファイルに移動し、ビジュアルエディターを開き、RelativeLayout(たとえば)を右クリックし、オプションをクリックして制約レイアウトに変換できます。

Build.gradleファイルにGradle依存関係を追加する必要もあります。

compile 'com.Android.support.constraint:constraint-layout:1.0.0'
28
Adrian Olar

から ドキュメント

既存のプロジェクトを更新する場合は、次の手順に従ってください:

最新のAndroid Support Repository(version 32以降))があることを確認してください:/ /これは私にとって欠けていた部分でした

[ツール]> Android> SDK Managerをクリックします。[SDKツール]タブをクリックします。Android Support Repositoryを選択し、[OK]をクリックします。

build.gradleファイルに、更新された制約レイアウトライブラリを依存関係として追加します:

dependencies {
  compile 'com.Android.support.constraint:constraint-layout:1.0.0'
}

ツールバーまたは同期通知で、[プロジェクトをGradleファイルと同期]をクリックします。

プロジェクトに新しい制約レイアウトを追加するには:

  • モジュールのレイアウトディレクトリを右クリックし、[新規]> [XML]> [レイアウトXML]をクリックします。レイアウトの名前を入力し、ルートタグに「Android.support.constraint.ConstraintLayout」と入力します。完了をクリックします。

既存のレイアウトを制約レイアウトに変換するには:

  • Android Studioで既存のレイアウトを開き、エディターウィンドウの下部にある[デザイン]タブを選択します。コンポーネントツリーウィンドウで、レイアウトを右クリックして[ConstraintLayoutに変換]をクリックします。
17
Mikelis Kaneps

これに進みます link fromGoogle CodeLabsConstraint Layoutの基本的な考え方と、Manual ConstraintAuto ConnectInference

また、UI BuilderInspectorは、より高速なUIを構築するのに役立ちます。

5
akashPatra

多くのバージョンを試しましたが、問題を解決できませんでした!最後にAndroid Studioでこの問題を解決します。

XMLファイルでは、エラーメッセージの横にこのオプションがあります!それをクリックして、reccomondedバージョンをインポートします

using version 1.0.0-alpha2 of the constraint library which is obsolete

または、Alt + Enterキーを押して、カーソルをエラー行に置きます

Alt + Enterを押すと、constraint-layout:1.0.0-alpha8になりました

'com.Android.support.constraint:constraint-layout:1.0.0-alpha8'をコンパイルします

4
Darshn

依存関係を追加する

compile 'com.Android.support.constraint:constraint-layout:1.0.0-alpha9'

新しいレイアウトxmlファイルを作成->goto design tab->ルートレイアウトを右クリックし、最後のオプションを選択しますLinearLayoutをConstraintLayoutに変換します

スクリーンショットを参照

enter image description here

2
Arpit Patel

モジュールレベルのgradleファイルにgoogle mavenリポジトリを追加する必要があります(important part

repositories {
    maven {
        url 'https://maven.google.com'
    }
}

次に、依存関係に次の行を追加します。

compile 'com.Android.support.constraint:constraint-layout:1.0.2'
compile 'com.Android.support.constraint:constraint-layout-solver:1.0.2'
1
faraz khonsari

ConstraintLayoutのパフォーマンスの利点を理解する は、従来のレイアウト階層の費用について説明しています。ネストされたレイアウトで構築されたこのレイアウトの例を示します

Example view

と主張する

ConstraintLayoutは、RelativeLayoutよりも測定/レイアウトフェーズで約40%優れたパフォーマンスを発揮します。

この Codelabプロジェクト は、ConstaintLayoutを使用してビュー階層を削減し、上記のレイアウトをフラット化する方法を示しています。

Codelab Project

1
Eugene Brusov

1) ConstraintLayoutを使用して新しいレイアウトを設計するには、app.gradleファイルに依存関係を含めます

compile 'com.Android.support.constraint:constraint-layout:1.0.0-alpha8'

注:レイアウト内の各ビューには、次の属性を含める必要があります。そうでない場合、ビューは(0,0)で表示されます。

<Android.support.constraint.ConstraintLayout
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    ....>

        <View
           Android:id="@+id/top_view"
           .../>

        <View
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/top_view"
        app:layout_constraintBottom_toTopOf="@+id/bottom_view"
        ..../>

       <View
           Android:id="@+id/bottom_view"
           .../>

</Android.support.constraint.ConstraintLayout>

2)既存のレイアウトファイルを制約レイアウトに変換するには:

Android Studioで既存のレイアウトを開き、エディターウィンドウの下部にある[デザイン]タブを選択します。コンポーネントツリーウィンドウで、ルートレイアウトを右クリックして[ConstraintLayoutに変換]をクリックします。定義された属性をアップします。

0
Logo

Googleは公式バージョン1.0をリリースしましたConstraintLayout

今、非ベータ版をインポートします

compile 'com.Android.support.constraint:constraint-layout:1.0.0'

こちらの情報を確認してください http://tools.Android.com/recent/constraintlayout10isnowavailable

0
Noorul

ファイルbuild.gradleの依存関係を変更します。

代わりにcompilecom.Android.support.constraint:constraint-layout:1.0.0-beta1を使用してください。

0
HaiZhong chen