Articles of android constraintlayout

特拉维斯CI构build不适用于Android约束布局

我正在试图让Travisbuild立我的Android项目。 它尝试下载ConstraintLayout库时失败。 你知道我必须做什么才能使它工作? 我的.travis.yml是这样的: language: android jdk: – oraclejdk8 android: components: – platform-tools – tools – build-tools-23.0.2 – android-23 – extra-android-support – extra-android-m2repository – extra-google-m2repository 我的build.gradle是: apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "my.example.bdd" minSdkVersion 9 targetSdkVersion 23 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled […]

如何从默认的ConstraintLayout切换到Android Studio 2.3.3中的RelativeLayout

我有最新的Android Studio(2.3testing版3),似乎ConstraintLayout是创build项目时的默认值。 我怎样才能把它切换到RelativeLayout?

ConstraintLayout:`layout_constraintLeft_creator`在xml中做了什么?

示例代码: <EditText android:id="@+id/msg_type" android:layout_width="0dp" android:layout_height="40dp" android:layout_marginBottom="8dp" android:layout_marginEnd="8dp" android:layout_marginStart="8dp" android:hint="Input message" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintHorizontal_bias="0.75" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toLeftOf="@+id/btn_chat_send" tools:layout_constraintBottom_creator="1" tools:layout_constraintLeft_creator="1" tools:layout_constraintRight_creator="1"/> 这里有什么tools:layout_constraintRight_creator="1" ? 没有任何文件解释这些事情。

如何使用ConstaintLayout将多个视图集中在一起?

背景 谷歌已经宣布了一个名为“ ConstraintLayout ”的新布局,这个布局应该是最终的布局,可以取代所有的布局,同时保持平坦(没有内部布局),并有更好的性能。 问题 事情是,我几乎没有看到任何教程,可以帮助我在这个问题上,除了在Google IO上呈现的video。 我尝试做的是给定我在另一个布局中有一个垂直居中的LinearLayout – 将它们转换成一个ConstraintLayout。 毕竟,这是这个新布局的目的… 我希望处理的布局如下所示: 请注意,中间的视图只是垂直居中,而2个textView则位于垂直居中的ImageView的右侧。 这一切都与RelativeLayout,其中有2个TextViews的LinearLayout,但我想知道如何将它们转换成一个ConstraintLayout。 以下是我所展示的XML示例: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="?attr/listPreferredItemHeightSmall"> <ImageView android:id="@+id/appIconImageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_centerVertical="true" android:layout_marginEnd="4dp" android:layout_marginLeft="2dp" android:layout_marginRight="4dp" android:layout_marginStart="2dp" android:adjustViewBounds="true" android:src="@android:drawable/sym_def_app_icon" tools:ignore="ContentDescription"/> <LinearLayout android:id="@+id/appDetailsContainer" android:layout_width="0px" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_toEndOf="@+id/appIconImageView" android:layout_toLeftOf="@+id/overflowView" android:layout_toRightOf="@+id/appIconImageView" android:layout_toStartOf="@+id/overflowView" android:orientation="vertical"> <TextView android:id="@+id/appLabelTextView" android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="marquee" android:text="label" […]

在ConstraintLayout中将视图分组,将它们视为单个视图

我需要对ConstraintLayout中的一组视图应用一些ConstraintLayout 。 我想将这些视图分组,然后继续编辑,Android Studio中的布局devise师将它们视为单个视图。 有没有办法做到这一点,而不真正用ViewGroup (另一个布局)包装视图? 如果这样的包装是必要的,也许有一个包装布局与ConstraintLayout来,并允许组合对象,而不创build像RelativeLayout重布局?

如何使用约束布局1.1中的新function?

有谁知道如何使用约束布局1.1中的新function,即障碍和基于百分比的维度? 网上绝对没有可用的文档,最近的Google I / Odevise工具的讨论仅覆盖了占位符。 顺便说一句,我发现如何使用组,这也是一个新的function。 你需要简单地添加 <android.support.constraint.Group app:constraint_referenced_ids="button1, button2" android:layout_width="wrap_content" android:layout_height="wrap_content"/> 到约束布局,其中app:constraint_referenced_ids是一个string,您应该枚举逗号分隔的视图id,您希望与此组关联。 现在,切换组的可见性会改变所引用的所有视图的可见性,我认为这是目前此function的主要目的。

Android – 如何使一个可滚动的约束布局?

我想做一个布局,让我使用约束布局向下滚动,但我不知道如何去做。 scrollview应该是这样的约束布局的父级? <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true"> <android.support.constraint.ConstraintLayout android:id="@+id/Constraint" android:layout_width="match_parent" android:layout_height="match_parent"> </android.support.constraint.ConstraintLayout> 或者相反呢? 也许有人可以指点我一个很好的教程或举一个例子,我似乎无法find一个。 此外,我不知道这是一个错误或一些configuration,我没有设置,但我已经看到像这样的图像,其中有一些蓝图“蓝色矩形”之外的组件,但他们是可见的,而在我这边,如果我将一个组件放置在“空白区域”上,我无法看到它或将它移动到任何地方,并且它出现在组件树上。 UPDATE 我发现了一种方法来使devise工具中的约束布局可以滚动,使用horiontal指南来压下约束布局边界并将其扩展到设备之外,之后您可以使用指南行作为约束布局的新底部锚定组件。

如何将元素居中在ConstraintLayout中

我在我的应用程序中使用ConstraintLayout来制作应用程序布局。 我正在尝试创build一个屏幕,其中一个EditText和Button应该居中,而Button应该在EditText下方,marginTop只有16dp。 这是我的布局和截图如何看现在。 activity_authenticate_content.xml <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="16dp" android:paddingRight="16dp" tools:context="com.icici.iciciappathon.login.AuthenticationActivity"> <android.support.design.widget.TextInputLayout android:id="@+id/client_id_input_layout" android:layout_width="0dp" android:layout_height="wrap_content" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent"> <android.support.design.widget.TextInputEditText android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/login_client_id" android:inputType="textEmailAddress" /> </android.support.design.widget.TextInputLayout> <android.support.v7.widget.AppCompatButton android:id="@+id/authenticate" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginTop="16dp" android:text="@string/login_auth" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="@id/client_id_input_layout" app:layout_constraintRight_toRightOf="@id/client_id_input_layout" app:layout_constraintTop_toTopOf="@id/client_id_input_layout" /> </android.support.constraint.ConstraintLayout>

设置宽度以匹配ConstraintLayout中的约束

我想限制视图的左侧和右侧到它的父视图的边距,并使其填充分配的空间。 但是,将宽度设置为match_parent或wrap_content似乎会产生相同的结果。 有什么等同于match_constraints(而不是match_parent和wrap_content)? match_parent和wrap_content会影响布局,还是在新的约束布局中被忽略? 爱这个新的布局系统为我最喜欢的平台!

我怎样才能得到Android的最新版本的ConstraintLayout?

当我尝试在我的布局content_main.xml使用ConstraintLayout时,出现以下消息: 使用约束库的版本1.0.0-alpha5,这是过时的 我目前正在使用以下库依赖项: compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha5' 我怎样才能得到约束布局的最新版本号?