无法在ScrollView中隐藏Spinners

时间:2017-04-01 02:42:46

标签: android widget android-spinner android-appcompat android-scrollview

由于某些原因,旋转器在传递滚动视图的边界后不会被隐藏。我知道问题在于appcompat微调器,因为我尝试了其他小部件(例如rey5137' s微调器),它们与滚动视图完美配合。

以下是代码:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.spinners.MainActivity">

    <TextView android:layout_height="wrap_content" android:layout_width="wrap_content"
        android:textSize="30sp"
        android:text="YOU SHALL NOT PASS !!!"/>

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="300dp">

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

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

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:paddingEnd="5dp"
                    android:text="NormalSpinner:"/>
                <Spinner
                    android:layout_width="200dp"
                    android:layout_height="30dp" />

            </LinearLayout>

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

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:paddingEnd="5dp"
                    android:text="ReySpinner:"/>

                <com.rey.material.widget.Spinner
                    android:layout_width="200dp"
                    android:layout_height="30dp"
                    app:spn_dividerColor="@color/colorAccent"
                    style="@style/Material.Widget.Spinner"
                    app:rd_style="@style/Material.Drawable.Ripple.Wave"
                    />
            </LinearLayout>

            <!-- spamming the same spinner layout above -->
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal">

                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:paddingEnd="5dp"
                    android:text="NormalSpinner:"/>
                <Spinner
                    android:layout_width="200dp"
                    android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingEnd="5dp"
                android:text="NormalSpinner:"/>
            <Spinner
                android:layout_width="200dp"
                android:layout_height="30dp" />

        </LinearLayout>

        </LinearLayout>
    </ScrollView>
</LinearLayout>

以下是正在发生的事情: The issue

1 个答案:

答案 0 :(得分:0)

似乎(截至2017年3月)平台缺陷(见https://code.google.com/p/android/issues/detail?id=199453)。在发布错误修复之前,您可能不得不使用其他一个微调器解决方案。