我正在开发一个Android应用程序,其中我将一些按钮放在线性布局中。在线性布局之后,我在右下角放置了一个“下一个”按钮。但它在运行应用程序后会转到左上角。线性布局位于约束布局中,线性布局下方的“下一个”按钮位于约束布局中。
<LinearLayout
android:id="@+id/toolbar"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="-11dp"
android:orientation="vertical"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent">
<mehdi.sakout.fancybuttons.FancyButton
android:id="@+id/btn_spotify"
android:layout_width="300dp"
android:layout_height="55dp"
android:layout_gravity="center"
android:layout_marginTop="20dp"
android:paddingBottom="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="10dp"
fancy:fb_borderColor="#f4d282"
fancy:fb_borderWidth="3dp"
fancy:fb_defaultColor="#bfc9d1"
fancy:fb_focusColor="#97f7ec"
fancy:fb_iconPosition="left"
fancy:fb_iconResource="@drawable/ic_image_black_24dp"
fancy:fb_radius="20dp"
fancy:fb_text="LOAD PICTURE"
fancy:fb_textColor="#121111"
fancy:fb_textSize="20dp" />
<mehdi.sakout.fancybuttons.FancyButton
android:id="@+id/btn_spotify2"
android:layout_width="300dp"
android:layout_height="55dp"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:paddingBottom="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="10dp"
fancy:fb_borderColor="#f4d282"
fancy:fb_borderWidth="3dp"
fancy:fb_defaultColor="#bfc9d1"
fancy:fb_focusColor="#97f7ec"
fancy:fb_iconPosition="left"
fancy:fb_iconResource="@drawable/ic_edit_black_24dp"
fancy:fb_radius="20dp"
fancy:fb_text="MANAGE SCHEDULE"
fancy:fb_textColor="#121111"
fancy:fb_textSize="20dp" />
<mehdi.sakout.fancybuttons.FancyButton
android:id="@+id/btn_spotify3"
android:layout_width="300dp"
android:layout_height="55dp"
android:layout_gravity="center"
android:layout_marginTop="10dp"
android:paddingBottom="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="10dp"
fancy:fb_borderColor="#f4d282"
fancy:fb_borderWidth="3dp"
fancy:fb_defaultColor="#bfc9d1"
fancy:fb_focusColor="#97f7ec"
fancy:fb_iconPosition="left"
fancy:fb_iconResource="@drawable/ic_access_alarm_black_24dp"
fancy:fb_radius="20dp"
fancy:fb_text="SET MENUALLY"
fancy:fb_textColor="#121111"
fancy:fb_textSize="20dp" />
<Button
android:id="@+id/btn_process"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/buttonLoadPicture"
android:foregroundGravity="center_horizontal"
android:scaleType="centerInside"
android:text="PROCESS" />
<Button
android:id="@+id/btn_next"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/btn_process"
android:foregroundGravity="center_horizontal"
android:scaleType="centerInside"
android:text="Next Page" />
<ImageView
android:id="@+id/imgView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="centerInside" />
<TextView
android:id="@+id/textview_result"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/btn_process"
android:foregroundGravity="center_horizontal"
android:scaleType="centerInside"
android:text="NO TEXT"
android:textSize="18sp" />
</LinearLayout>
<mehdi.sakout.fancybuttons.FancyButton
android:id="@+id/btn_spotify4"
android:layout_width="150dp"
android:layout_height="55dp"
android:layout_gravity="center"
android:paddingBottom="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="10dp"
fancy:fb_borderColor="#f4d282"
fancy:fb_borderWidth="3dp"
fancy:fb_defaultColor="#bfc9d1"
fancy:fb_focusColor="#97f7ec"
fancy:fb_iconPosition="right"
fancy:fb_iconResource="@drawable/ic_arrow_forward_black_24dp"
fancy:fb_radius="20dp"
fancy:fb_text="Next"
fancy:fb_textColor="#121111"
fancy:fb_textSize="20dp"
tools:layout_editor_absoluteX="208dp"
tools:layout_editor_absoluteY="420dp" />
答案 0 :(得分:1)
为“下一步”按钮创建底部约束。 在下一个按钮中定义此约束:
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintEnd_toEndOf="parent"
每个视图必须至少有一个约束。
来自官方文档:
要在ConstraintLayout中定义视图的位置,您必须至少添加 视图的一个水平约束和一个垂直约束。每 约束表示与另一个视图的连接或对齐, 父布局或隐形指南。每个约束定义了 视图沿垂直轴或水平轴的位置;所以每一个 视图必须对每个轴至少有一个约束,但通常 更多是必要的。
在此处了解详情:https://developer.android.com/training/constraint-layout/index.html
答案 1 :(得分:0)
如果要将“下一步”按钮保持在“无文本”文本视图下方,则只需将“按钮”按钮放在“线性”布局(id:工具栏)中,并将其保留为布局结束。将按钮保持在此布局中后,NEXT按钮将显示在底部。