2011-08-22 32 views
1

我試圖將兩個線性佈局嵌套爲另一個線性佈局的直接子對象。最終意圖是將這兩個佈局嵌套在ViewFlipper中,這樣兩個線性佈局中的每一個都會翻轉進出屏幕。直接嵌套線性佈局僅顯示第一個子視圖

佈局正常工作,直到我巢父元素內的兩個線性佈局,在這種情況下,只有第一插件在第一子被顯示。所以我有這樣的事情:

<LinearLayout (parent)... 
    <LinearLayout (child1)... 
    <child1's Widgets... <---only the first widget here is being shown 

    <LinearLayout (child2)... 
    <child2's widgets... 

我不知道爲什麼會發生這種情況。任何人都可以擺脫任何光?

全碼:

<?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:background="#FFFFFF"> 

     <TextView 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:textSize="22sp" 
      android:layout_gravity="center" 
      android:gravity="center" 
      android:text="Hello, is this a great app?" 
      android:textColor="#000000" 
      android:layout_marginBottom="10dip" 
      android:layout_marginTop="8dip"/> 

     <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content"> 
      <Button 
       android:id="@+id/btnYes" 
       android:text="Yes" 
       android:textSize="20sp" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:layout_marginBottom="7dip" 
       android:layout_marginLeft="4dip" 
       android:layout_marginRight="4dip"/> 
      <Button 
       android:id="@+id/btnNo" 
       android:text="No" 
       android:textSize="20sp" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:layout_marginBottom="7dip" 
       android:layout_marginLeft="4dip" 
       android:layout_marginRight="4dip"/> 
     </LinearLayout> 

     <!-- <ViewFlipper 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent"> 
      --> 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content"> 

       <LinearLayout <!-- ONLY THE CONTENT FROM HERE IS BEING SHOWN --> 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content"> 

        <TextView 
        android:layout_width="0px" 
        android:layout_height="wrap_content" 
        android:text="Lat:" 
        android:textSize="16sp" 
        android:layout_weight="1" 
        android:layout_marginLeft="12dip"/> 
        <TextView 
        android:id="@+id/lblLat" 
        android:layout_width="0px" 
        android:layout_height="wrap_content" 
        android:text="" 
        android:textSize="16sp" 
        android:layout_weight="3" 
        android:gravity="right" 
        android:layout_marginRight="12dip"/> 
       </LinearLayout> <!--NO MORE CONTENT Is SHOWN AFTER HERE --> 

       <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content"> 
        <TextView 
        android:layout_width="0px" 
        android:layout_height="wrap_content" 
        android:text="Lon:" 
        android:textSize="16sp" 
        android:layout_weight="1" 
        android:layout_marginLeft="12dip"/> 
        <TextView 
        android:id="@+id/lblLon" 
        android:layout_width="0px" 
        android:layout_height="wrap_content" 
        android:text="" 
        android:textSize="16sp" 
        android:layout_weight="3" 
        android:gravity="right" 
        android:layout_marginRight="12dip"/> 

       </LinearLayout> 

       <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content"> 
        <TextView 
        android:layout_width="0px" 
        android:layout_height="wrap_content" 
        android:text="Number of satellites:" 
        android:textSize="16sp" 
        android:layout_weight="3" 
        android:layout_marginLeft="12dip"/> 
        <TextView 
        android:id="@+id/lblSats" 
        android:layout_width="0px" 
        android:layout_height="wrap_content" 
        android:text="" 
        android:textSize="16sp" 
        android:layout_weight="1" 
        android:gravity="right" 
        android:layout_marginRight="12dip"/> 

       </LinearLayout> 

       <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content"> 
        <TextView 
        android:layout_width="0px" 
        android:layout_height="wrap_content" 
        android:text="Signal To Noise:" 
        android:textSize="16sp" 
        android:layout_weight="3" 
        android:layout_marginTop="25dip" 
        android:layout_marginLeft="12dip"/> 
        <TextView 
        android:id="@+id/lblSNR" 
        android:layout_width="0px" 
        android:layout_height="wrap_content" 
        android:text="" 
        android:textSize="16sp" 
        android:layout_weight="1" 
        android:gravity="right" 
        android:layout_marginTop="25dip" 
        android:layout_marginRight="12dip"/> 

       </LinearLayout> 

       <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content"> 

        <TextView 
        android:id="@+id/lblAddresses" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="" 
        android:textSize="16sp" 
        android:layout_marginLeft="12dip" 
        android:minLines="3"/> 

       </LinearLayout> 

      </LinearLayout> 

      <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content"> 

      <TextView 
        android:id="@+id/lblAbout" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:text="Stuff About App" 
        android:textSize="16sp" 
        android:layout_marginLeft="12dip" 
        android:minLines="3"/> 

      </LinearLayout> 


     <!-- </ViewFlipper> --> 

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

      <Button 
        android:id="@+id/btnLookup" 
        android:text="LookUp" 
        android:textSize="18sp" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:padding="20dip" 
        android:paddingTop="1dip" 
        android:paddingBottom="5dip" 
        android:layout_alignParentBottom="true" 
        android:layout_marginBottom="8dip" 
        android:layout_marginLeft="8dip" /> 

      <Button 
        android:id="@+id/btnQuit" 
        android:text="Quit" 
        android:textSize="18sp" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignParentBottom="true" 
        android:layout_alignParentRight="true" 
        android:padding="20dip" 
        android:paddingTop="1dip" 
        android:paddingBottom="5dip" 
        android:layout_marginBottom="8dip" 
        android:layout_marginRight="8dip" /> 

     </RelativeLayout> 

    </LinearLayout> 
+0

您能否指出哪些線性佈局會導致您的XML示例中的問題 – hooked82

+0

您好編輯了帶有註釋的代碼,謝謝 –

+0

當您在XML的主要部分包裝ScrollView時會發生什麼?看起來屏幕的內容可能太長,除非您可以滾動,否則不會顯示。 – hooked82

回答

4

確保對所有LinearLayout標籤的android:orientation財產。

<LinearLayout 
    .. 
    android:orientation="vertical|horizontal"> 
... 
</LinearLayout> 

如果你想在vertical顯示子組件,你需要明確地說明它,因爲它默認設置爲horizontal

+1

。 android:layout_width =「fill_parent」在水平佈局中填充屏幕寬度。在父級中添加orientation =「vertical」。 – njzk2

相關問題