首页 > 解决方案 > 如何约束保证金结束?

问题描述

我想添加arrow icon一个endLinearLayout

所需布局

实现这一目标的最佳方法是什么?

LinearLayout我成功地将and包裹ImageView起来ConstraintLayout,但感觉有比使用更优雅的方式app:layout_constraintHorizontal_bias="1"

在第一次尝试ImageView时,是LinerLayout(没有ConstraintLayout)的一部分,有没有办法从这里获得所需的布局?

第一次尝试

当前.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.LinearLayoutCompat 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">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/profile_constraint_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="@dimen/_16sdp">

        <androidx.appcompat.widget.LinearLayoutCompat
            android:id="@+id/profile_layout"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="start"
            android:orientation="horizontal">

            <androidx.appcompat.widget.AppCompatImageView
                android:id="@+id/imageView"
                android:layout_marginStart="@dimen/_4sdp"
                android:layout_width="48dp"
                android:layout_height="48dp"
                android:background="@drawable/ic_account_circle_black_48dp"
                android:contentDescription="@string/nav_bottom_sheet_profile_description" />

            <androidx.appcompat.widget.LinearLayoutCompat
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:layout_marginStart="@dimen/_4sdp">

                <androidx.appcompat.widget.AppCompatTextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/jesta_profile_full_name_default"/>

                <androidx.appcompat.widget.AppCompatTextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/jesta_profile_phone_number_default"/>
            </androidx.appcompat.widget.LinearLayoutCompat>

        </androidx.appcompat.widget.LinearLayoutCompat>

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:contentDescription="@string/jesta_profile_edit_profile_icon_description"
            android:src="@drawable/ic_keyboard_arrow_right_black_24dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@+id/profile_layout"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintHorizontal_bias="1"/>
    </androidx.constraintlayout.widget.ConstraintLayout>

...
</androidx.appcompat.widget.LinearLayoutCompat>

标签: androidandroid-studioandroid-constraintlayout

解决方案


仅将箭头图标限制为top,bottomend,它将自动附加到布局的最后

所以而不是这个:

<ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:contentDescription="@string/jesta_profile_edit_profile_icon_description"
            android:src="@drawable/ic_keyboard_arrow_right_black_24dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@+id/profile_layout"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintHorizontal_bias="1"/>

拥有这个:

    <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"    
                android:contentDescription="@string/jesta_profile_edit_profile_icon_description"
                android:src="@drawable/ic_keyboard_arrow_right_black_24dp"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintTop_toTopOf="parent"
                />

推荐阅读