Есть ли у вас какая-либо идея о том, как использовать новый шаблон ограничений, который был недавно анонсирован в этом году в Google I/O?
Как использовать новый шаблон Android Constraint для уменьшения иерархии просмотра
Ответ 1
Вы можете перейти к существующему файлу ресурсов макета, открыть визуальный редактор и щелкнуть правой кнопкой мыши по RelativeLayout (например) и выбрать опцию для преобразования в макет ограничения.
Вам также нужно добавить зависимость Gradle в файле build.gradle:
compile 'com.android.support.constraint:constraint-layout:1.0.0'
Ответ 2
От Docs
Если вы обновляете существующий проект, действуйте следующим образом:
Убедитесь, что у вас есть последний репозиторий поддержки Android (версия 32 или выше)://Это была та часть, которая отсутствовала для меня
Нажмите "Сервис" > "Android" > "Менеджер SDK". Откройте вкладку "Инструменты SDK". Выберите "Репозиторий поддержки Android", затем нажмите "ОК".
Добавить обновленную библиотеку раскладки Constraint в качестве зависимости в файле build.gradle:
dependencies {
compile 'com.android.support.constraint:constraint-layout:1.0.0'
}
В панели инструментов или уведомлении синхронизации нажмите "Синхронизировать проект" с Gradle "Файлы".
Чтобы добавить в проект новый шаблон ограничения:
- Щелкните правой кнопкой мыши на директории макета модуля и выберите команду Создать > XML > Макет. Введите имя макета и введите "android.support.constraint.ConstraintLayout" для корневого тега. Нажмите "Готово".
Чтобы преобразовать существующий макет в макет ограничения:
- Откройте существующий макет в Android Studio и выберите вкладку "Дизайн" внизу окна редактора. В окне "Дерево компонентов" щелкните правой кнопкой мыши макет и выберите "Преобразовать в ConstraintLayout".
Ответ 3
Перейдите по ссылке из Google CodeLabs. У вас будет основное представление о Маске ограничений и о том, как использовать различные ограничения, такие как Manual Constraint
, Auto Connect
и Inference
.
Также есть UI Builder
и Inspector
, которые помогут нам построить более быстрый интерфейс.
Ответ 4
Я пробовал много версий, но я не мог решить проблему! Наконец, я позволю Android Studio решить эту проблему.
В файле XML, помимо сообщения об ошибке, вы можете увидеть эту опцию! Нажмите на него, чтобы импортировать обновленную версию
или вы можете нажать alt + enter, помещая курсор на строку с ошибкой
Я получил ограничение-layout: 1.0.0-alpha8, когда я нажал alt + enter
компиляции 'Com.android.support.constraint: ограничение-макет: 1.0.0-alpha8'
Ответ 5
добавить зависимости
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'
И создайте новый макет xml файла → перейдите на вкладку дизайна → , щелкните правой кнопкой мыши свой корневой макет и выберите последнюю опцию конвертировать LinearLayout в ConstraintLayout strong >
См. снимок экрана
Ответ 6
вам следует добавить репозиторий google maven в файле уровня gradle (важная часть)
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'
Ответ 7
Понимание преимуществ производительности ConstraintLayout описывает расход традиционной иерархии раскладок. Он дает пример этого макета, построенного с вложенными макетами
и утверждает, что
ConstraintLayout выполняет примерно на 40% лучше в фазе измерения/компоновки, чем RelativeLayout
Этот проект Codelab показывает, как использовать ConstaintLayout для уменьшения иерархии просмотра и сглаживания вышеупомянутого макета.
Ответ 8
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". Затем включите указанные выше атрибуты.
Ответ 9
Измените зависимости в файле build.gradle
.
Вместо этого используйте compile com.android.support.constraint:constraint-layout:1.0.0-beta1
.
Ответ 10
Google выпустила официальную версию 1.0 ConstraintLayout
теперь импортировать не бета-версию
compile 'com.android.support.constraint:constraint-layout:1.0.0'
Отметьте здесь информацию http://tools.android.com/recent/constraintlayout10isnowavailable