2012-01-30 165 views
0

我試圖用許多小部件創建RelativeLayout的,我希望能夠以垂直和水平滾動它。 起初,我把它只有垂直與XML滾動:垂直的RelativeLayout與二維滾動

Activity

一切都還好吧和活動卷軸:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:fitsSystemWindows="true" 
android:orientation="vertical" > 

<ScrollView 
    android:id="@+id/layoutPostWriteScrollView" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:fillViewport="true" 
    android:fitsSystemWindows="true"> 

     <RelativeLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="fill_horizontal" 
      android:layout_marginRight="5dp" 
      android:fitsSystemWindows="true" 
      android:gravity="center" > 

      <TextView 
       android:id="@+id/layoutPostWriteCtrlLabelTheme" 
       style="@style/News.Caption" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Тема" /> 

      <EditText 
       android:id="@+id/layoutPostWriteCtrlTheme" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@+id/layoutPostWriteCtrlLabelTheme" 
       android:inputType="text" />    

      <LinearLayout 
       android:id="@+id/layoutPostWriteEmbeddedMediaLayout" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/layoutPostWriteCtrlTheme" 
       android:gravity="left" 
       android:orientation="vertical" /> 

      <Button 
       android:id="@+id/layoutPostWriteAddMediaButton" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/layoutPostWriteEmbeddedMediaLayout" 
       android:onClick="onAddMediaClick" 
       android:text="+ Добавить медиафайл" /> 

      <TextView 
       android:id="@+id/layoutPostWriteCtrlLabelContent" 
       style="@style/News.Caption" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/layoutPostWriteAddMediaButton" 
       android:text="Содержание" /> 

      <EditText 
       android:id="@+id/layoutPostWriteCtrlContent" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/layoutPostWriteCtrlLabelContent" 
       android:gravity="top" 
       android:inputType="textMultiLine" 
       android:lines="10" 
       android:scrollbars="vertical" 
       android:singleLine="false" /> 

      <Button 
       android:id="@+id/layoutPostWriteCtrlSave" 
       android:layout_width="200dp" 
       android:layout_height="40dp" 
       android:layout_alignParentRight="true" 
       android:layout_below="@id/layoutPostWriteCtrlContent" 
       android:background="@drawable/btn_save" 
       android:onClick="onClickSendPost" /> 
     </RelativeLayout> 
</ScrollView> 

我的活動看起來像這樣。

但後來我嘗試添加horizo​​ntalScrollView這樣的:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:fitsSystemWindows="true" 
android:orientation="vertical" > 

<ScrollView 
    android:id="@+id/layoutPostWriteScrollView" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 

    android:fillViewport="true" 
    android:fitsSystemWindows="true"> 

    <HorizontalScrollView 
     android:id="@+id/layoutPostWriteHScrollView" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_gravity="fill" 
     android:fillViewport="true" 
     android:fitsSystemWindows="true" > 

     <RelativeLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="fill_horizontal" 
      android:layout_marginRight="5dp" 
      android:fitsSystemWindows="true" 
      android:gravity="center" > 

      <TextView 
       android:id="@+id/layoutPostWriteCtrlLabelTheme" 
       style="@style/News.Caption" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="Тема" /> 

      <EditText 
       android:id="@+id/layoutPostWriteCtrlTheme" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@+id/layoutPostWriteCtrlLabelTheme" 
       android:inputType="text" /> 

      <LinearLayout 
       android:id="@+id/layoutPostWriteEmbeddedMediaLayout" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/layoutPostWriteCtrlTheme" 
       android:gravity="left" 
       android:orientation="vertical" /> 

      <Button 
       android:id="@+id/layoutPostWriteAddMediaButton" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/layoutPostWriteEmbeddedMediaLayout" 
       android:onClick="onAddMediaClick" 
       android:text="+ Добавить медиафайл" /> 


      <TextView 
       android:id="@+id/layoutPostWriteCtrlLabelContent" 
       style="@style/News.Caption" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/layoutPostWriteAddMediaButton" 
       android:text="Содержание" /> 

      <EditText 
       android:id="@+id/layoutPostWriteCtrlContent" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@id/layoutPostWriteCtrlLabelContent" 
       android:gravity="top" 
       android:inputType="textMultiLine" 
       android:lines="10" 
       android:scrollbars="vertical" 
       android:singleLine="false" /> 

      <Button 
       android:id="@+id/layoutPostWriteCtrlSave" 
       android:layout_width="200dp" 
       android:layout_height="40dp" 
       android:layout_alignParentRight="true" 
       android:layout_below="@id/layoutPostWriteCtrlContent" 
       android:background="@drawable/btn_save" 
       android:onClick="onClickSendPost" /> 
     </RelativeLayout> 
    </HorizontalScrollView> 
</ScrollView> 

有標記中沒有錯誤,但活動現在看起來像這樣: Activity

所有EditTexts和全RelativeLayout的收縮。我怎樣才能使活動看起來像第一個圖像,但縱向和橫向滾動?我嘗試了layout_width和layout_height的許多組合,但它似乎不起作用。

回答

0

說不定就會對你有幫助,有一個Link介紹如何使二維滾動滾動型與和HorizntalScrollView。