Android scrollview不起作用 - 1个主要子线性布局

时间:2013-02-24 21:52:01

标签: android eclipse android-layout

这是我的代码: 1个子节点,其他相对布局元素嵌套在主节点中,因此它为滚动视图创建了1个子节点。

我正在为Nexus 7创建这个,但是当我在HTC Desire HD滚动视图中检查它时,它只是削减了最后的“RelativeLayoutGerman”。

有什么想法吗?

代码:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/mainScroll"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:fillViewport="true" >

    <RelativeLayout
        android:id="@+id/relativeLayoutMain"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/backrepeat"
        android:gravity="clip_vertical"
        tools:context=".MainActivity" >

        <RelativeLayout
            android:id="@+id/relativeLayoutMainHeader"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:background="@drawable/bghead"
            android:orientation="vertical" >
        </RelativeLayout>

        <RelativeLayout
            android:id="@+id/relativeLayoutMainGerman"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/relativeLayoutMainSlovenscina"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/textViewMainGerman"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageViewMainLine3"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="20dp"
                android:text="@string/mainGerman"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:textColor="#9B7D66" />

        </RelativeLayout>

        <RelativeLayout
            android:id="@+id/relativeLayoutMainSlovenscina"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/relativeLayoutMainEnglish"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/textViewCategoriesDrinks"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_marginBottom="20dp"
                android:layout_marginTop="20dp"
                android:text="@string/mainSlovene"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:textColor="#9B7D66" />

            <ImageView
                android:id="@+id/imageViewMainLine1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageViewTopLine2"
                android:layout_centerHorizontal="true"
                android:contentDescription="@string/descrLine"
                android:src="@drawable/middleline" />

            <ImageView
                android:id="@+id/imageViewTopLine2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@id/textViewCategoriesDrinks"
                android:layout_centerHorizontal="true"
                android:contentDescription="@string/descrLine"
                android:src="@drawable/line_top" />

        </RelativeLayout>

        <RelativeLayout
            android:id="@+id/relativeLayoutMainEnglish"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/relativeLayoutMainHeader"
            android:layout_marginTop="20dp"
            android:clickable="true"
            android:onClick="selectEnglish"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/textViewMainEnglish"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/relativeLayoutMainHeader"
                android:layout_centerHorizontal="true"
                android:layout_marginBottom="20dp"
                android:layout_marginTop="20dp"
                android:text="@string/mainEnglish"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:textColor="#9B7D66" />

            <ImageView
                android:id="@+id/imageViewMainLine3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/imageViewTopLine1"
                android:layout_centerHorizontal="true"
                android:src="@drawable/middleline" />

            <ImageView
                android:id="@+id/imageViewTopLine1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@id/textViewMainEnglish"
                android:layout_centerHorizontal="true"
                android:contentDescription="@string/descrLine"
                android:src="@drawable/line_top" />

        </RelativeLayout>

    </RelativeLayout>

</ScrollView>

1 个答案:

答案 0 :(得分:0)

尝试将ScrollView更改为LinearLayout(您可能需要删除android:fillViewport="true"行),然后在ScrollView内创建单独的LinearLayout

如果您需要页面底部的某些内容(假设您正在执行与this类似的操作)这是我发现的一个小技巧。

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="100"
    android:duplicateParentState="false" >

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:clipChildren="false"
        android:clipToPadding="true" >



</ScrollView>
</FrameLayout>


<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:gravity="center_horizontal" >


</LinearLayout>