如虚线所示:
-两个TextView
应该保持对齐。
-ImageView
应该与标题TextView
标签应相对于父标签彼此固定,如草图所示。
我尝试使用ConstrainedLayout
来实现这一点,这使我走得很远。但是棘手的部分是图像和标题的对齐。
我需要一个类似layout_constraintCenter_toCenterOf
的属性,不幸的是不存在。
编辑:###删除了硬编码高度###
我的代码中有一个不需要的硬编码高度(在下面的示例中标记)。删除后对我来说很好用。
但是问题是:居中对齐视图的“正确”方法是什么?
我的解决方案感觉像是黑客。
##################################### < / p>
这是我到目前为止得到的:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:padding="5dp">
<ImageView
android:id="@+id/image1"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="8dp"
android:layout_weight="0"
android:adjustViewBounds="true"
android:contentDescription="@null"
app:layout_constraintEnd_toStartOf="@+id/titleText"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/titleText"
android:layout_width="0dp"
### edit: this line must go:
### android:layout_height="19dp"
android:layout_marginStart="158dp"
android:layout_marginEnd="8dp"
android:layout_weight="1"
android:ellipsize="end"
android:gravity="center_vertical"
android:maxLines="1"
app:layout_constraintBottom_toBottomOf="@+id/image1"
app:layout_constraintTop_toTopOf="@+id/image1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/image1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="parent"
tools:text="title" />
<TextView
android:id="@+id/detailText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginEnd="8dp"
android:layout_weight="0"
android:gravity="center_vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@+id/titleText"
app:layout_constraintTop_toBottomOf="@+id/titleText"
app:layout_constraintBottom_toBottomOf="parent"
tools:text="subtitle" />
</android.support.constraint.ConstraintLayout>
我试图通过对齐顶部和底部来解决此问题,该顶部和底部在预览中看起来很合适,但会导致实际应用中出现故障:
app:layout_constraintBottom_toBottomOf="@+id/image1"
app:layout_constraintTop_toTopOf="@+id/image1"
也许ConstrainedLayout
完全是这项工作的错误工具。
在Android中实现此布局的“正确方法”是什么?
答案 0 :(得分:0)
您可以尝试以下方法:
System.out.println("Die kleinste Zahl ist: " + Util.minimum(new int[0]));
如果需要,您可以进行进一步的编辑。
快乐的求爱
答案 1 :(得分:0)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_centerInParent="true"
android:padding="5dp">
<ImageView
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:id="@+id/image1"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="8dp"
android:src="@color/colorAccent"
android:adjustViewBounds="true"
android:contentDescription="@null"
app:layout_constraintEnd_toStartOf="@+id/titleText"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/titleText"
android:layout_width="match_parent"
android:layout_height="19dp"
android:layout_marginEnd="8dp"
android:textAlignment="center"
android:ellipsize="end"
android:text="abcjdnadnaadjdndd"
android:layout_toRightOf="@id/image1"
android:gravity="center_vertical"
android:maxLines="1"
app:layout_constraintBottom_toBottomOf="@+id/image1"
app:layout_constraintTop_toTopOf="@+id/image1"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/image1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="parent"
tools:text="title" />
<TextView
android:layout_toRightOf="@id/image1"
android:textAlignment="center"
android:layout_below="@id/titleText"
android:id="@+id/detailText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginEnd="8dp"
android:text="sadhbhaeadhbaedn"
android:gravity="center_vertical"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@+id/titleText"
app:layout_constraintTop_toBottomOf="@+id/titleText"
tools:text="subtitle" />
</RelativeLayout>