以下是我整个xml约束布局的一部分。
<ImageView
android:id="@+id/img_apn_not_set"
style="@style/DeviceManagementImageView"
android:contentDescription="@string/app_name"
android:src="@drawable/ic_sos"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/view1" />
<TextView
android:id="@+id/tv_apn_not_set"
style="@style/DeviceManagementHeaderText"
android:text="Apn not set"
android:layout_marginTop="5dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/img_apn_not_set"
app:layout_constraintTop_toTopOf="@+id/img_apn_not_set" />
我要做的是在图像视图右侧的精确中心上获取文本视图。在线性布局中,我们主要通过重力实现它。在这里,我使用marginTop
来实现同样的目标。所以我可以通过使用任何属性来做同样的事情。是否有类似rightOfCentreOf
的财产?
谢谢
答案 0 :(得分:4)
请在textview中添加一行
app:layout_constraintBottom_toBottomOf="@+id/img_apn_not_set"
同时删除 android:layout_marginTop =“5dp”
希望对你有所帮助
答案 1 :(得分:2)
尝试此操作,如果要向右或向左移动文本,请使用水平偏移,如果要将文本移动到顶部或底部,请使用垂直偏差。
<TextView
android:id="@+id/tv_apn_not_set"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:text="@string/app_name"
app:layout_constraintBottom_toBottomOf="@+id/img_apn_not_set"
app:layout_constraintEnd_toEndOf="@+id/img_apn_not_set"
app:layout_constraintHorizontal_bias="0.63"
app:layout_constraintStart_toStartOf="@+id/img_apn_not_set"
app:layout_constraintTop_toTopOf="@+id/img_apn_not_set" />
答案 2 :(得分:1)
试试这个
<?xml version="1.0" encoding="utf-8"?>
<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:orientation="vertical">
<ImageView
android:id="@+id/AmountLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher_background"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintBaseline_toBaselineOf="@id/Amount"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/Amount"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:text="NILESH"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toEndOf="@id/AmountLabel"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
<强> RESULT 强>
答案 3 :(得分:1)
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 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="match_parent">
<ImageView
android:id="@+id/img_apn_not_set"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_apn_not_set"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="Apn not set"
app:layout_constraintBottom_toBottomOf="@+id/img_apn_not_set"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/img_apn_not_set"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
答案 4 :(得分:1)
你可以使用 app:layout_constraintWidth_default =“wrap”并给出它将位于中心的所有4个边约束
示例:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 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="match_parent">
<ImageView
android:id="@+id/img_apn_not_set"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/app_name"
android:src="@drawable/ic_launcher_foreground"
app:layout_constraintLeft_toLeftOf="parent" />
<TextView
android:id="@+id/tv_apn_not_set"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="Apn not set"
app:layout_constraintWidth_default="wrap"
app:layout_constraintTop_toTopOf="@+id/img_apn_not_set"
app:layout_constraintBottom_toBottomOf="@+id/img_apn_not_set"
app:layout_constraintLeft_toRightOf="@+id/img_apn_not_set"
app:layout_constraintRight_toRightOf="parent" />
</android.support.constraint.ConstraintLayout>
看起来像这样