2013-02-24 47 views
0

這是我的代碼: 1個孩子,其他相對佈局元素嵌套在主內部,因此它爲滾動視圖創建1個孩子。Android滾動視圖不起作用 - 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> 
+0

我不確定這是你的問題,但我不相信'RelativeLayout'有'orientation'屬性。如果它的父佈局已經定位在「視圖」下面,爲什麼將這個'TextView'設置在另一個視圖的下方? – codeMagic 2013-02-24 22:00:12

+0

我認爲在滾動視圖中使用LinearLayouts可以實現同樣的效果。 – Phobos 2013-02-24 22:03:01

+0

codeMagic,我把它放在下面,所以它不會在不同的屏幕尺寸上重疊。 – 2013-02-25 01:39:17

回答

0

嘗試改變ScrollViewLinearLayout(您可能需要刪除android:fillViewport="true"線),然後創建LinearLayout內的單獨ScrollView

如果你需要一些東西在頁面的底部(假設你正在做類似於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> 
+0

我這樣做,它的工作原理,但「android:fillViewport」不再填充。 – 2013-02-25 01:38:00

+0

嗨,檢查我編輯的帖子。把你需要的東西放在ScrollView裏面(和FrameLayout,不知道這是否完全必要,但我知道這是有效的),然後任何需要堅持頁面底部的東西只需要在外部線性佈局。 – 2013-03-02 20:48:20