Articles of android constraintlayout

包中没有find属性“layout_constraintLeft_toLeftOf”的资源标识符

我正在使用Android SDK 2.2.3。 我正在关注编程Android的一本书。 代码是: <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:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="eu.a123sandberg.webview.MainActivity" tools:layout_editor_absoluteX="0dp" tools:layout_editor_absoluteY="81dp"> <WebView android:layout_width="384dp" android:layout_height="511dp" tools:layout_editor_absoluteX="0dp" tools:layout_editor_absoluteY="0dp" app:layout_constraintLeft_toLeftOf="@+id/activity_main" tools:layout_constraintLeft_creator="0" app:layout_constraintTop_toTopOf="@+id/activity_main" tools:layout_constraintTop_creator="0" app:layout_constraintRight_toRightOf="@+id/activity_main" tools:layout_constraintRight_creator="0" app:layout_constraintBottom_toBottomOf="@+id/activity_main" tools:layout_constraintBottom_creator="0" /> </android.support.constraint.ConstraintLayout> 我已经尝试了三个与android.support.constraint.ConstraintLayout不同的例子,并在所有情况下,我得到相同的错误消息: Error:(13) No resource identifier found for attribute 'layout_constraintLeft_toLeftOf' in package 'eu.a123sandberg.webview' build.gradle文件包含: apply plugin: 'com.android.application' android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfig { applicationId […]

约束布局(ConstraintLayout) – 让元素占用必要的空间

我有一个TextView和一个Button按顺序在一个ConstraintLayout中水平组织: 我需要第一个元素(TextView)在文本足够短的时候只占用必要的空间,而在需要显示更多文本的同时还要留出足够的空间让第二个元素(Button)完全渲染该视图的结尾与父对象的结尾alignment。 这是XML目前的样子: <android.support.constraint.ConstraintLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="16dp"> <TextView android:id="@+id/element1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_marginEnd="8dp" android:layout_marginRight="8dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintTop_toTopOf="parent" tools:text="Short enough text"/> <Button android:id="@+id/element2" android:layout_width="wrap_content" android:layout_height="48dp" android:layout_gravity="center_vertical" android:layout_marginEnd="8dp" android:layout_marginLeft="8dp" android:layout_marginRight="8dp" android:layout_marginStart="8dp" android:drawableLeft="@drawable/element2ButtonDrawable" android:drawablePadding="0dp" android:drawableStart="@drawable/element2ButtonDrawable" android:text="Action" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toRightOf="@id/element1" app:layout_constraintTop_toTopOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintHorizontal_bias="0.0"/> </android.support.constraint.ConstraintLayout> 当从“足够短的文本”切换到“将导致大部分底部被推到父视图边界之外的较长文本”时,这是树如何呈现的: 有没有可能通过使用ConstraintLayout来实现我想要做的? (在撰写本文时,最新版本是1.0.2) 谢谢!

尝试使用ConstraintLayout复制GridLayout列alignment

我是ConstraintLayout的新手,我试图用ConstraintLayout复制GridLayout提供的同样的网格行为。 具体来说,我想devise一个两列网格。 第一列的宽度应尽可能窄,而第二​​列的宽度应尽可能小。 当然,第二列应该在第一列的右侧,或者说是第一列的最宽处。 我不知道如何使用ConstraintLayout复制最后一个需求。 我不想在两列之间使用网格线,因为第一列不应该有固定的百分比宽度,而应该是最宽的。 在https://gist.github.com/venator85/499dd82f47b3efbbed7a1e9e1ca1412d我准备了一个布局的例子,和相应的预览,显示一个GridLayout实现我想要的。 该布局的前两个ConstraintLayout尝试显示C1和D1与B1alignment,而C2和D2与B2alignment。 当B2比A2窄时,A1和C1将重叠。 任何帮助? 谢谢

ConstraintLayout vs协调员布局?

什么实现ConstraintLayout或CoordinatorLayout在Android中适当的材料devise?

Android的布局看起来在一些设备搞砸了

我有一个非常奇怪的问题与布局。 它看起来像在Eclipse的XML编辑器和我的三星Galaxydevise,但它是在我的旧手机xperia x10迷你搞砸了。 我只能假设这也会发生在其他设备上。 如果有人能帮助解决这个问题,我将不胜感激。 这里有两个截图和XML代码。 它在eclipse布局编辑器和我的三星Galaxy S4 mini中看起来如何 它在索尼xperia x10 mini中看起来如何 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:orientation="vertical" android:gravity="center" android:layout_height="wrap_content" > <FrameLayout android:layout_marginTop="7dp" android:layout_gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content"> <View android:layout_marginTop="19dp" android:layout_marginLeft="19dp" android:layout_height="249dp" android:layout_width="2dp" android:background="#B2CFEF"/> <View android:layout_marginTop="19dp" android:layout_marginLeft="189dp" android:layout_height="249dp" android:layout_width="2dp" android:background="#B2CFEF"/> <View android:layout_marginTop="18dp" android:layout_marginLeft="20dp" android:layout_height="2dp" android:layout_width="170dp" android:background="#B2CFEF"/> <View android:layout_marginTop="267dp" android:layout_marginLeft="19dp" android:layout_height="2dp" android:layout_width="171dp" android:background="#B2CFEF"/> <ImageView style="@style/ta_img" android:id="@+id/ta_lu" android:layout_marginTop="52dp" […]

以编程方式更改约束布局中的指南百分比

我有这样的约束布局指南 <android.support.constraint.Guideline android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/guideline8" app:layout_constraintGuide_percent="0.5" android:orientation="vertical"/> 后来我想将app:layout_constraintGuide_percent值更改为其他条件。 我怎样才能做到这一点。

如何实现约束布局的重叠/负边距?

是否可以在约束布局上实现负边界来实现重叠? 我正在尝试在布局上有一个图像,并有一个文本视图,使其与x dp重叠。 我尝试设置负值的边际值,但没有运气。 如果有办法实现这一点,那将是非常好的。

ConstraintLayout与RelativeLayout&CardView – caching和内存空间

我开发了一个应用程序,从json中检索数据到本地数据库的移动,并显示从本地数据库与RecyclerView ,我的容器布局如下所示: <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" android:clickable="true" android:focusable="true" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" android:gravity="end" android:layout_gravity="end" android:id="@+id/detailContainerLayout" android:baselineAligned="true" android:background="@drawable/border_bottom" > <TextView android:id="@+id/article_title" style="@style/TextAppearance.AppCompat.Subhead" android:layout_width="220dp" android:layout_height="wrap_content" android:paddingLeft="5dp" android:paddingTop="2dp" android:layout_marginRight="9dp" android:layout_marginLeft="4dp" android:textColor="@color/buttons_background" android:fontFamily="sans-serif-condensed" android:maxLines="2" android:textSize="@dimen/text_main" android:layout_gravity="end" android:gravity="start" android:layoutDirection="rtl"/> <TextView android:id="@+id/article_date" style="@style/TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="8dp" android:paddingRight="9dp" android:textColor="@color/textColor" android:maxLines="1" android:layout_gravity="end" android:gravity="end" android:textSize="@dimen/date_size" android:layout_marginTop="8dp" /> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:layout_gravity="center_horizontal|bottom" […]

Android Studio 2.2预览1 EditText错误

我试图使用Android Studio 2.2预览1,但如果我创build一个新的项目,并添加一个简单的EditText,并尝试运行,我得到以下错误。 05-20 15:53:00.748 11798-11798/br.com.tutorialandroid.sqlite E/AndroidRuntime: FATAL EXCEPTION: main Process: br.com.tutorialandroid.sqlite, PID: 11798 java.lang.RuntimeException: Unable to start activity ComponentInfo{br.com.tutorialandroid.sqlite/br.com.tutorialandroid.sqlite.MainActivity}: android.view.InflateException: Binary XML file line #14: Error inflating class EditText at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2658) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2723) at android.app.ActivityThread.access$900(ActivityThread.java:172) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1422) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:5832) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194) Caused by: […]

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

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