首页 > 解决方案 > 动态设置文本后如何保持布局的固定位置?

问题描述

我正在制作一个应用程序,它从远程数据库中获取食物类别并将它们放入 recyclerView 但设置文本后位置不断变化,我需要“查看更多”保持在右侧这样

.

我怎么解决这个问题?

这就是现在的样子

.

那是我的代码:

<?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="wrap_content">

<android.support.v7.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="@dimen/activity_horizontal_margin"
    android:layout_marginTop="8dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="@dimen/activity_horizontal_margin">

    <TextView
        android:id="@+id/textTest1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginLeft="16dp"
        android:text="Heading"
        android:textAppearance="@style/Base.TextAppearance.AppCompat.Large"
        app:layout_constraintBaseline_toBaselineOf="@+id/textView"
        app:layout_constraintEnd_toStartOf="@+id/textView"
        app:layout_constraintStart_toStartOf="parent" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:gravity="right">

        <TextView
            android:id="@+id/textView"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:text="@string/see_more"
            android:textColor="#26979d"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@+id/textTest1"
            app:layout_constraintTop_toTopOf="parent" />

        <ImageView
            android:id="@+id/imageView3"
            android:layout_width="17dp"
            android:layout_height="19dp"
            app:srcCompat="@drawable/ic_right_arrow"
            tools:layout_editor_absoluteX="335dp"
            tools:layout_editor_absoluteY="9dp" />
    </LinearLayout>

</LinearLayout>
</android.support.constraint.ConstraintLayout>

标签: android

解决方案


感谢 CodeRed 的回答,我找到了答案,希望对其他人有所帮助。这是一个包装内容错误

     <?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="wrap_content">

<android.support.v7.widget.CardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="@dimen/activity_horizontal_margin"
    android:layout_marginTop="8dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<LinearLayout
    android:id="@+id/linearlayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="@dimen/activity_horizontal_margin">

    <TextView
        android:id="@+id/textTest1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginLeft="16dp"
        android:text="Heading"
        android:textAppearance="@style/Base.TextAppearance.AppCompat.Large"
        app:layout_constraintBaseline_toBaselineOf="@+id/textView"
        app:layout_constraintEnd_toStartOf="@+id/textView"
        app:layout_constraintStart_toStartOf="parent" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="right">

        <TextView
            android:id="@+id/textView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/see_more"
            android:textColor="#26979d"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@+id/textTest1"
            app:layout_constraintTop_toTopOf="parent" />

        <ImageView
            android:id="@+id/imageView3"
            android:layout_width="15dp"
            android:layout_height="15dp"
            app:srcCompat="@drawable/ic_right_arrow"
            tools:layout_editor_absoluteX="335dp"
            tools:layout_editor_absoluteY="9dp" />
    </LinearLayout>

</LinearLayout>
</android.support.constraint.ConstraintLayout>

推荐阅读