स्क्रॉलव्यू के अंदर देखें सभी जगह नहीं है


144

मैं एक स्क्रॉल के अंदर एक RelativeLayout है। मेरे RelativeLayout android:layout_height="match_parent"पर दृश्य पूरे आकार में नहीं है, यह एक wra_content की तरह है।

क्या वास्तविक fill_parent / match_parent व्यवहार करने का कोई तरीका है?

मेरा लेआउट:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

    <ImageView
    android:id="@+id/top"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:scaleType="fitXY"
    android:src="@drawable/top" />

    <ImageView
    android:id="@+id/header"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/top"
    android:scaleType="fitXY"
    android:src="@drawable/headerbig" />

    <ImageView
    android:id="@+id/logo"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/header"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="3dp"
    android:src="@drawable/logo" />

    <ScrollView
    android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:layout_above="@+id/bottom"
    android:layout_below="@+id/logo"
    android:background="@drawable/background" >

        <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

             <ImageView
            android:id="@+id/dashboard01"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/dashboard02"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="30dp"
            android:src="@drawable/dashboard01"
            android:visibility="visible" />

            <ImageView
            android:id="@+id/dashboard02"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            android:layout_alignParentRight="true"
            android:layout_marginRight="10dp"
            android:src="@drawable/dashboard02" />

             <ImageView
            android:id="@+id/dashboard03"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/dashboard02"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="40dp"
            android:src="@drawable/dashboard03"
            android:visibility="visible" />
         </RelativeLayout>
    </ScrollView>

    <ImageView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/logo"
    android:layout_centerHorizontal="true"
    android:scaleType="fitXY"
    android:src="@drawable/bar" />

    <ImageView
    android:id="@+id/bottom"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:scaleType="fitXY"
    android:src="@drawable/bottom" />

</RelativeLayout>

जवाबों:


461

android:fillViewport="true"अपने स्क्रॉल दृश्य में जोड़ने का प्रयास करें

याद रखें कि android:layout_height=”fill_parent”"माता-पिता की ऊंचाई को निर्धारित करें।" यह स्पष्ट रूप से नहीं है कि आप क्या चाहते हैं जब एक का उपयोग कर ScrollView। आखिरकार, यह ScrollViewबेकार हो जाता है अगर इसकी सामग्री हमेशा की तरह उतनी ही लंबी हो। इसके आस-पास काम करने के लिए, आपको स्क्रॉलव्यू नामक विशेषता का उपयोग करने की आवश्यकता है android:fillViewport। जब सही पर सेट किया जाता है, तो यह विशेषता स्क्रॉल दृश्य के बच्चे को ScrollViewज़रूरत पड़ने पर ऊँचाई तक फैला देती है । जब बच्चा इससे अधिक लंबा होता है ScrollView, तो विशेषता का कोई प्रभाव नहीं पड़ता है।

http://www.curious-creature.org/2010/08/15/scrollviews-handy-trick/


3
वही क्षैतिज क्षैतिज दृश्य के लिए है।
कूलमाइंड

मेरा दिन बचाया, स्क्रॉलव्यू इसके बिना बेकार है: पी
कासिम

एक जादू की तरह काम किया! धन्यवाद। आपने मेरा दिन बचाया।
अनस अज़ीम

यदि यह आपके लिए काम नहीं करता है, तो सुनिश्चित करें कि आपने स्क्रॉलव्यू पर विशेषता सेट की है, न कि बच्चे को!
एनसेलिक

महान जवाब के लिए धन्यवाद। मेरा दिन भी बचाओ
dudi

8

बस Android जोड़ें: स्क्रॉल दृश्य में yout xml लेआउट में fillViewport = "true"

<ScrollView android:layout_height="match_parent"
    android:layout_width="match_parent"
    android:background="@color/green"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:fitsSystemWindows="true"
    android:fillViewport="true"
    >

<!--define views here-->


</ScrollView>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.