Android ScrollView在布局设计中不显示滚动

时间:2017-04-12 20:07:55

标签: android android-layout

我看到很多人在这里问同样的问题,但我仍然找不到我的滚动视图无效的原因。

这是我的布局

<?xml version="1.0" encoding="utf-8"?>
<ScrollView 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:id="@+id/activity_upload"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp"
android:fillViewport="true"
tools:context="com.example.daniw.traekle.upload">

<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TextView
        android:id="@+id/tv_itemName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Item Name"
        android:textColor="#000000"
        android:textStyle="bold"
        android:textSize="20sp"
        android:layout_marginBottom="5dp"/>

    <EditText
        android:id="@+id/et_itemTitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Title"
        android:layout_marginBottom="5dp"
        android:textColor="#000000"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:text="Book ISBN(option)"
        android:id="@+id/tv_bISBN"
        android:textSize="20sp"
        android:textStyle="bold"
        android:textColor="#000000" />

    <EditText
        android:id="@+id/et_ISBN"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:textColor="#000000"
        android:text="test"/>

    <TextView
        android:id="@+id/tv_itemPrice"
        android:text="Price"
        android:textStyle="bold"
        android:textSize="20sp"
        android:textColor="#000000"
        android:layout_marginBottom="5dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <EditText
        android:id="@+id/et_itemPrice"
        android:text="Test"
        android:textColor="#000000"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"/>

    <TextView
        android:id="@+id/tv_itemDescription"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Item Description"
        android:textSize="20sp"
        android:textColor="#000000"
        android:textStyle="bold"
        android:layout_marginBottom="5dp"/>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/inputLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:counterEnabled="true"
        app:counterMaxLength="600"
        app:counterOverflowTextAppearance="@style/MyOverflowText">

            <EditText
                android:id="@+id/et_itemDescription"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:ems="10"
                android:text="Test"
                android:maxLength="600"
                android:textColor="#000000"/>
    </android.support.design.widget.TextInputLayout>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="15dp"
        android:text="Choose Image"
        android:id="@+id/b_chooseImage"/>

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:id="@+id/itemImage"/>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Post Item"
        android:id="@+id/bPost"/>
</LinearLayout>
</ScrollView>

这太奇怪了,因为我完成了其他布局后使用了scrollview,它的工作正常,但在此活动中,scrollview甚至不会在预览中显示。

There no scroll

3 个答案:

答案 0 :(得分:0)

您已将 LinearLayout 的高度设置为fill_parent,不建议使用match_parent,而应设置 LinearLayout 高度到wrap_content

原因是您的 LinearLayout ScrollView 具有相同的高度,因此无需滚动。如果将其设置为wrap_content LinearLayout 的高度可以大于 ScrollView ,它将滚动显示 ScrollViews 界限

答案 1 :(得分:0)

试试这个:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView 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:id="@+id/activity_upload"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="5dp"
    android:paddingLeft="5dp"
    android:paddingRight="5dp"
    android:paddingTop="5dp"
    android:fillViewport="true"
    tools:context="com.example.daniw.traekle.upload">

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:id="@+id/tv_itemName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Item Name"
            android:textColor="#000000"
            android:textStyle="bold"
            android:textSize="20sp"
            android:layout_marginBottom="5dp"/>

        <EditText
            android:id="@+id/et_itemTitle"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Title"
            android:layout_marginBottom="5dp"
            android:textColor="#000000"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:text="Book ISBN(option)"
            android:id="@+id/tv_bISBN"
            android:textSize="20sp"
            android:textStyle="bold"
            android:textColor="#000000" />

        <EditText
            android:id="@+id/et_ISBN"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:textColor="#000000"
            android:text="test"/>

        <TextView
            android:id="@+id/tv_itemPrice"
            android:text="Price"
            android:textStyle="bold"
            android:textSize="20sp"
            android:textColor="#000000"
            android:layout_marginBottom="5dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <EditText
            android:id="@+id/et_itemPrice"
            android:text="Test"
            android:textColor="#000000"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"/>

        <TextView
            android:id="@+id/tv_itemDescription"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Item Description"
            android:textSize="20sp"
            android:textColor="#000000"
            android:textStyle="bold"
            android:layout_marginBottom="5dp"/>

        <android.support.design.widget.TextInputLayout
            android:id="@+id/inputLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:counterEnabled="true"
            app:counterMaxLength="600"
            app:counterOverflowTextAppearance="@style/MyOverflowText">

            <EditText
                android:id="@+id/et_itemDescription"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:ems="10"
                android:text="Test"
                android:maxLength="600"
                android:textColor="#000000"/>
        </android.support.design.widget.TextInputLayout>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="15dp"
            android:text="Choose Image"
            android:id="@+id/b_chooseImage"/>

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="150dp"
            android:layout_margin="5dp"
            android:paddingBottom="16dp"
            android:scaleType="fitXY"
            android:id="@+id/itemImage"/>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Post Item"
            android:id="@+id/bPost"/>

    </LinearLayout>
</ScrollView>

答案 2 :(得分:-1)

我意识到我是多么愚蠢,我完成了这个问题。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView 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:id="@+id/activity_upload"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="5dp"
android:fillViewport="true"
tools:context="com.example.daniw.traekle.upload">

<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="15dp"
        android:text="Choose Image"
        android:id="@+id/b_chooseImage"/>

    <ImageView
        android:layout_width="fill_parent"
        android:layout_height="200dp"
        android:layout_margin="5dp"
        android:layout_marginBottom="5dp"
        android:paddingBottom="50dp"
        android:paddingLeft="3dp"
        android:paddingRight="3dp"
        android:paddingTop="3dp"
        android:scaleType="fitXY"
        android:id="@+id/itemImage"/>

    <TextView
        android:id="@+id/tv_itemName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Item Name"
        android:textColor="#000000"
        android:textStyle="bold"
        android:textSize="20sp"
        android:layout_marginBottom="5dp"/>

    <EditText
        android:id="@+id/et_itemTitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Title"
        android:layout_marginBottom="5dp"
        android:textColor="#000000"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:text="Book ISBN(option)"
        android:id="@+id/tv_bISBN"
        android:textSize="20sp"
        android:textStyle="bold"
        android:textColor="#000000" />

    <EditText
        android:id="@+id/et_ISBN"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:textColor="#000000"
        android:text="test"/>

    <TextView
        android:id="@+id/tv_itemPrice"
        android:text="Price"
        android:textStyle="bold"
        android:textSize="20sp"
        android:textColor="#000000"
        android:layout_marginBottom="5dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <EditText
        android:id="@+id/et_itemPrice"
        android:text="Test"
        android:textColor="#000000"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"/>

    <TextView
        android:id="@+id/tv_itemDescription"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Item Description"
        android:textSize="20sp"
        android:textColor="#000000"
        android:textStyle="bold"
        android:layout_marginBottom="5dp"/>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/inputLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:counterEnabled="true"
        app:counterMaxLength="600"
        app:counterOverflowTextAppearance="@style/MyOverflowText">

        <EditText
            android:id="@+id/et_itemDescription"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:ems="10"
            android:text="Test"
            android:maxLength="600"
            android:textColor="#000000"/>
    </android.support.design.widget.TextInputLayout>

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Post Item"
        android:id="@+id/bPost"/>

</LinearLayout>
</ScrollView>

现在这个布局工作正常