如何将指南置于指南中心?

时间:2018-05-09 02:31:38

标签: android-constraintlayout

假设我在父级的30%处有一个水平bash ./submit.sh myJobName ,并且有一个视图(假设一个按钮)如何使该视图以指南为中心?

像这样:

https://github.com/SchedMD/slurm/blob/master/NEWS

更新

我在这里使用的视图具有基于比率的高度,并且对答案的解决不起作用。

这是当前的布局:

GuideLine

3 个答案:

答案 0 :(得分:5)

  

使用固定宽度或高度

需要对顶部和底部约束使用相同的fulfill,例如:

Guideline

的xml:

app:layout_constraintTop_toTopOf="@id/guideline_30"
app:layout_constraintBottom_toBottomOf="@id/guideline_30"

ouuput:

enter image description here

  

根据比率使用宽度和高度

  • 当您根据比例使用宽度和高度时,它不会居中。
  • 但要获得所需结果,您还可以设置<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/imgLogo" android:layout_width="150dp" android:layout_height="150dp" app:layout_constraintTop_toTopOf="@id/guideline_30" app:layout_constraintBottom_toBottomOf="@id/guideline_30" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" android:src="@drawable/splash_logo" /> <android.support.constraint.Guideline android:id="@+id/guideline_30" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" app:layout_constraintGuide_percent="0.30" /> </android.support.constraint.ConstraintLayout> (0.3 / 2)并修改Guideline = 0.15constraintTop

的xml:

constraintBotttom

输出中:

enter image description here

答案 1 :(得分:4)

您需要将视图的顶部和底部都限制为指南,如下所示:

<android.support.constraint.Guideline
    android:id="@+id/guideline"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    app:layout_constraintGuide_percent="0.3" />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:layout_constraintTop_toTopOf="@id/guideline"
    app:layout_constraintBottom_toBottomOf="@id/guideline" />

答案 2 :(得分:0)

在ConstraintLayout中,要使其他View组件(例如,Guide,TextView,ImageView,布局等)的“垂直视图”轴居中,您可以简单地按照以下两个步骤以XML进行操作:-

1)app:layout_constraintTop_toTopOf="@id/componentId"

2)app:layout_constraintBottom_toBottomOf="@id/componentId"

这将在垂直中心平均分布组件的视图。

奖金 :-

要使View在水平轴上居中,请使用

1)app:layout_constraintLeft_toLeftOf="@id/componentId" 要么 app:layout_constraintStart_toStartOf="@id/componentId"

2)app:layout_constraintRight_toRightOf="@id/componentId" 要么 app:layout_constraintEnd_toEndeOf="@id/componentId"

相关问题