Android Cookie

Android 安卓是最开放的手机操作系统,谷歌安卓APP开发和安卓市场的相关话题

如何使用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" […]