【问题标题】:ConstraintLayout Scrollable not workingConstraintLayout Scrollable 不起作用
【发布时间】:2017-05-17 17:02:13
【问题描述】:

我用 ConstraintLayout 设计了一个活动,它包含许多应该滚动的元素,我这样做了,但它不起作用!

首先我设置了根元素,可滚动,这也不起作用。 然后我设置了根元素 linearlayout 并再次不起作用!

问题出在哪里?

<?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"
tools:layout_editor_absoluteX="288dp"
tools:layout_editor_absoluteY="213dp">

<ScrollView
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:fillViewport="true"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent">

    <android.support.constraint.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <android.support.constraint.Guideline
            android:id="@+id/guideline20"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            app:layout_constraintGuide_begin="917dp" />

        <android.support.v7.widget.CardView
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_marginBottom="8dp"
            android:layout_marginEnd="8dp"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:layout_marginStart="8dp"
            android:layout_marginTop="8dp"
            app:cardElevation="10dp"
            app:layout_constraintBottom_toTopOf="@+id/guideline7"
            app:layout_constraintHorizontal_bias="1.0"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintVertical_bias="1.0">

            <android.support.constraint.ConstraintLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <TextView
                    android:id="@+id/textView7"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="8dp"
                    android:layout_marginEnd="8dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginStart="8dp"
                    android:layout_marginTop="8dp"
                    android:text="250"
                    android:textAlignment="viewEnd"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline10"
                    app:layout_constraintHorizontal_bias="0.0"
                    app:layout_constraintLeft_toLeftOf="@+id/guideline9"
                    app:layout_constraintRight_toRightOf="parent"
                    app:layout_constraintTop_toTopOf="@+id/guideline8" />

                <TextView
                    android:id="@+id/textView6"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="8dp"
                    android:layout_marginEnd="8dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginStart="8dp"
                    android:layout_marginTop="8dp"
                    android:text="pourya8366"
                    android:textAlignment="viewStart"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline10"
                    app:layout_constraintLeft_toLeftOf="parent"
                    app:layout_constraintRight_toLeftOf="@+id/guideline9"
                    app:layout_constraintTop_toTopOf="@+id/guideline8" />

                <TextView
                    android:id="@+id/textView4"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="8dp"
                    android:layout_marginEnd="8dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginStart="8dp"
                    android:layout_marginTop="8dp"
                    android:text="امتیاز"
                    android:textAlignment="viewEnd"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintLeft_toLeftOf="@+id/guideline9"
                    app:layout_constraintRight_toRightOf="parent"
                    app:layout_constraintTop_toTopOf="@+id/guideline10" />

                <TextView
                    android:id="@+id/textView2"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="8dp"
                    android:layout_marginEnd="8dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginStart="8dp"
                    android:layout_marginTop="8dp"
                    android:text="نام کاربری"
                    android:textAlignment="viewStart"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintLeft_toLeftOf="parent"
                    app:layout_constraintRight_toLeftOf="@+id/guideline9"
                    app:layout_constraintTop_toTopOf="@+id/guideline10" />

                <ImageView
                    android:id="@+id/imageView12"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline8"
                    app:layout_constraintLeft_toLeftOf="parent"
                    app:layout_constraintRight_toRightOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    app:srcCompat="@android:color/holo_blue_dark" />

                <android.support.constraint.Guideline
                    android:id="@+id/guideline8"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal"
                    app:layout_constraintGuide_percent="0.5"
                    tools:layout_editor_absoluteX="8dp"
                    tools:layout_editor_absoluteY="296dp" />

                <android.support.constraint.Guideline
                    android:id="@+id/guideline9"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    app:layout_constraintGuide_percent="0.5" />

                <android.support.constraint.Guideline
                    android:id="@+id/guideline10"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal"
                    app:layout_constraintGuide_percent="0.75"
                    tools:layout_editor_absoluteX="8dp"
                    tools:layout_editor_absoluteY="399dp" />
            </android.support.constraint.ConstraintLayout>

            <android.support.constraint.ConstraintLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <de.hdodenhof.circleimageview.CircleImageView
                    android:id="@+id/imageView13"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    android:layout_marginBottom="0dp"
                    android:layout_marginLeft="0dp"
                    android:layout_marginRight="0dp"
                    android:layout_marginTop="0dp"

                    android:src="@drawable/logo"
                    app:civ_border_color="#FF000000"
                    app:civ_border_width="2dp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline14"
                    app:layout_constraintHorizontal_bias="0.0"
                    app:layout_constraintLeft_toLeftOf="@+id/guideline11"
                    app:layout_constraintRight_toLeftOf="@+id/guideline12"
                    app:layout_constraintTop_toTopOf="@+id/guideline13"
                    app:layout_constraintVertical_bias="0.0" />

                <android.support.constraint.Guideline
                    android:id="@+id/guideline11"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    app:layout_constraintGuide_percent="0.375" />

                <android.support.constraint.Guideline
                    android:id="@+id/guideline12"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    app:layout_constraintGuide_percent="0.625" />

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

                <android.support.constraint.Guideline
                    android:id="@+id/guideline14"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal"
                    app:layout_constraintGuide_percent="0.55" />
            </android.support.constraint.ConstraintLayout>
        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_marginBottom="8dp"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:layout_marginTop="8dp"
            app:cardElevation="10dp"
            app:layout_constraintBottom_toTopOf="@+id/guideline15"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="@+id/guideline7"
            app:layout_constraintVertical_bias="1.0">

            <android.support.constraint.ConstraintLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <TextView
                    android:id="@+id/textView10"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="8dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginTop="8dp"
                    android:text="+"
                    android:textAlignment="center"
                    android:textColor="#ff0000"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline18"
                    app:layout_constraintHorizontal_bias="0.0"
                    app:layout_constraintLeft_toLeftOf="@+id/guideline16"
                    app:layout_constraintRight_toLeftOf="@+id/guideline17"
                    app:layout_constraintTop_toTopOf="parent" />

                <Button
                    android:id="@+id/button3"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="9dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:background="#4285f4"
                    android:text="Button"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintHorizontal_bias="0.0"
                    app:layout_constraintLeft_toLeftOf="parent"
                    app:layout_constraintRight_toRightOf="parent" />

                <TextView
                    android:id="@+id/textView9"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    android:layout_marginBottom="4dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginTop="4dp"
                    android:text="5000"
                    android:textAlignment="center"
                    android:textColor="#ff0000"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline19"
                    app:layout_constraintHorizontal_bias="0.0"
                    app:layout_constraintLeft_toLeftOf="@+id/guideline17"
                    app:layout_constraintRight_toRightOf="parent"
                    app:layout_constraintTop_toTopOf="parent"
                    app:layout_constraintVertical_bias="0.666" />

                <TextView
                    android:id="@+id/textView8"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    android:layout_marginBottom="4dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginTop="8dp"
                    android:text="بن"
                    android:textAlignment="center"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline18"
                    app:layout_constraintHorizontal_bias="0.0"
                    app:layout_constraintLeft_toLeftOf="@+id/guideline17"
                    app:layout_constraintRight_toRightOf="parent"
                    app:layout_constraintTop_toTopOf="@+id/guideline19"
                    app:layout_constraintVertical_bias="0.0" />

                <TextView
                    android:id="@+id/textView5"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    android:layout_marginBottom="4dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginTop="4dp"
                    android:text="اعتبار"
                    android:textAlignment="center"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline18"
                    app:layout_constraintHorizontal_bias="1.0"
                    app:layout_constraintLeft_toLeftOf="parent"
                    app:layout_constraintRight_toLeftOf="@+id/guideline16"
                    app:layout_constraintTop_toTopOf="@+id/guideline19"
                    app:layout_constraintVertical_bias="1.0" />

                <TextView
                    android:id="@+id/textView3"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    android:layout_marginBottom="4dp"
                    android:layout_marginLeft="8dp"
                    android:layout_marginRight="8dp"
                    android:layout_marginTop="8dp"
                    android:text="10000"
                    android:textAlignment="center"
                    android:textSize="24sp"
                    app:layout_constraintBottom_toTopOf="@+id/guideline19"
                    app:layout_constraintHorizontal_bias="0.0"
                    app:layout_constraintLeft_toLeftOf="parent"
                    app:layout_constraintRight_toLeftOf="@+id/guideline16"
                    app:layout_constraintTop_toTopOf="parent"
                    app:layout_constraintVertical_bias="0.666" />

                <android.support.constraint.Guideline
                    android:id="@+id/guideline16"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    app:layout_constraintGuide_percent="0.45" />

                <android.support.constraint.Guideline
                    android:id="@+id/guideline17"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    app:layout_constraintGuide_percent="0.55" />

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

                <android.support.constraint.Guideline
                    android:id="@+id/guideline19"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal"
                    app:layout_constraintGuide_percent="0.25" />
            </android.support.constraint.ConstraintLayout>
        </android.support.v7.widget.CardView>

        <EditText
            android:id="@+id/editText5"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:layout_marginTop="16dp"
            android:drawablePadding="10dp"
            android:drawableRight="@android:drawable/ic_dialog_email"
            android:ems="10"
            android:inputType="textEmailAddress"
            android:text="ایمیل"
            android:textAlignment="viewEnd"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/editText4" />

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

        <EditText
            android:id="@+id/editText3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginBottom="8dp"
            android:layout_marginTop="0dp"
            android:ems="10"
            android:inputType="textPersonName"
            android:text="Name"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/editText6" />

        <EditText
            android:id="@+id/editText4"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:layout_marginTop="19dp"
            android:ems="10"
            android:inputType="none"
            android:text="مشخصات حساب"
            android:textAlignment="viewEnd"
            android:textSize="24sp"
            android:textStyle="bold"
            android:visibility="visible"
            app:layout_constraintHorizontal_bias="0.497"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="@+id/guideline15" />

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

        <EditText
            android:id="@+id/editText8"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:ems="10"
            android:inputType="textPersonName"
            android:text="Name"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/editText3" />

        <EditText
            android:id="@+id/editText6"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:layout_marginTop="16dp"
            android:ems="10"
            android:inputType="textPersonName"
            android:text="نام کاربری"
            android:textAlignment="viewEnd"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/editText5" />
    </android.support.constraint.ConstraintLayout>
</ScrollView>

【问题讨论】:

  • "but it not work!" 什么都没有显示?有东西显示但不滚动?一切都滚动到底部?还有什么?
  • @pskink 滚动行为不起作用,除了页面底部的元素外,所有内容都显示出来。
  • 什么"elements that is in the bottom of page"?什么没有显示?
  • @pskink 最后一个editText 元素。并查看我的代码更新。
  • 您发现问题了吗?我有类似类型的视图组展示位置,并且滚动视图不起作用。

标签: android android-xml android-scrollview android-constraintlayout


【解决方案1】:

我会建议,让约束布局成为父级,包含其他视图和布局。可能会有所帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-20
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 2021-01-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多