web-dev-qa-db-ja.com

ScrollViewがスクロールしない-Android

なぜこれが起こっているのか理解できません。 scrollviewをスクロールできません。 textView、imageview、およびその中のいくつかの線形レイアウトがあります。 imageviewとリニアレイアウトをtextviewに置き換えると、機能します。これは本当に珍しくてイライラします。誰も私を助けることができますか?ここに私のコードがあります:

<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent" >

<ScrollView
    Android:id="@+id/scrollView1"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:fillViewport="true" >

    <LinearLayout
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:animateLayoutChanges="true"
        Android:orientation="vertical"
        Android:scrollbars="vertical" >

        <TextView
            Android:id="@+id/textView1"
            Android:layout_width="wrap_content"
            Android:layout_height="wrap_content"
            Android:layout_gravity="center"
            Android:text="Drop Text Down"
            Android:textAppearance="?android:attr/textAppearanceLarge" />

        <ImageView
            Android:id="@+id/imageView1"
            Android:layout_width="match_parent"
            Android:layout_height="555dp"
            Android:src="@drawable/ic_launcher" />

        <LinearLayout
            Android:layout_width="match_parent"
            Android:layout_height="100dp"
            Android:orientation="vertical" >

            <TextView
                Android:id="@+id/textView2"
                Android:layout_width="wrap_content"
                Android:layout_height="wrap_content"
                Android:text="TextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextView" />

        </LinearLayout>

        <LinearLayout
            Android:id="@+id/ln"
            Android:layout_width="match_parent"
            Android:layout_height="100dp"
            Android:background="#000000"
            Android:orientation="vertical" >

            <LinearLayout
                Android:layout_width="match_parent"
                Android:layout_height="100dp"
                Android:orientation="vertical" >

                <TextView
                    Android:id="@+id/TextView06"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:text="TextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextView" />
            </LinearLayout>

            <LinearLayout
                Android:layout_width="match_parent"
                Android:layout_height="100dp"
                Android:orientation="vertical" >

                <TextView
                    Android:id="@+id/TextView05"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:text="TextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextView" />
            </LinearLayout>

            <LinearLayout
                Android:layout_width="match_parent"
                Android:layout_height="100dp"
                Android:orientation="vertical" >

                <TextView
                    Android:id="@+id/TextView04"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:text="TextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextView" />
            </LinearLayout>

            <LinearLayout
                Android:layout_width="match_parent"
                Android:layout_height="100dp"
                Android:orientation="vertical" >

                <TextView
                    Android:id="@+id/TextView03"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:text="TextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextView" />
            </LinearLayout>

            <LinearLayout
                Android:layout_width="match_parent"
                Android:layout_height="100dp"
                Android:orientation="vertical" >

                <TextView
                    Android:id="@+id/TextView02"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:text="TextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextView" />
            </LinearLayout>

            <LinearLayout
                Android:layout_width="match_parent"
                Android:layout_height="100dp"
                Android:orientation="vertical" >

                <TextView
                    Android:id="@+id/TextView01"
                    Android:layout_width="wrap_content"
                    Android:layout_height="wrap_content"
                    Android:text="TextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextViewTextView" />
            </LinearLayout>

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

</LinearLayout>

ありがとう。

11
David

高さを固定した空のビューを配置する

<View
                Android:layout_width="match_parent"
                Android:layout_height="50dp" />

スクロールビューの子であるリニアレイアウトの最後のアイテムとして。

これは私のために働いた..

17

ScrollViewの子ビューはwrap_contentに設定する必要があります。 match_parentに設定すると、ScrollViewの領域がいっぱいになり、ScrollViewより大きくならないため、スクロールしません。

LinearLayout layout_heightを、match_parentではなくwrap_contentまたは特定のサイズ(dp)に変更してみてください。

12
Bidhan A

ScrollView子の高さはwrap_content

<ScrollView
Android:id="@+id/scrollView1"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
>

<LinearLayout
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:animateLayoutChanges="true"
    Android:orientation="vertical"
    Android:scrollbars="vertical" >

    ... 
    ...
</LinearLayout>
</ScrollView>
3
Prashant Patel

以下のように、アクティビティマニフェストに(Android:windowSoftInputMode = "adjustResize | stateHidden")を追加することで解決できました。

<activity
            Android:name=".ui.main.MainActivity"
            Android:label="@string/app_name"
            Android:windowSoftInputMode="adjustResize|stateHidden"
            Android:screenOrientation="portrait"
            Android:theme="@style/AppTheme.NoActionBar">
        </activity> 
2
sodiqOladeni

LinearLayout(Scrollviewの子)の高さをwrap_contentに設定する必要があります。

子がScrollViewよりも高い場合、Android:fillViewport = "true"属性は効果がありません。

2
Vikas