2014-10-01 54 views
0

我有一個佈局是這樣的:添加布局滾動型被吃掉了

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:layout_marginBottom="10dp" 
    android:background="#ff303f" 
    android:id="@+id/layout"> 
    <ImageView 
     android:id="@+id/picture" 
     android:layout_width="300dp" 
     android:layout_height="300dp" 
     android:layout_centerInParent="true"/> 
    <Button 
     android:id="@+id/cancel" 
     android:layout_width="45dp" 
     android:layout_height="45dp" 
     android:layout_alignRight="@id/picture" 
     android:background="@drawable/cross_out"/> 
</RelativeLayout> 

我使用正常的佈局充氣服務它充氣,設置一些功能按鈕和圖像的ImageView的(所有圖像的大小和寬高比都相同)。

在那之後,我加入這個觀點我片段的佈局,也不過是滾動型這是一個家長,它有一個我稱之爲「地圖」,並簡單地把它添加到地圖一個孩子的線性佈局。

預期:添加的佈局應該正確添加,並且可以滾動瀏覽它。 實際:如果添加了2個以上,第一個會被吃掉。我可以看到它一半或有時它完全吃掉了。 :\

任何想法這是怎麼回事?非常感謝您的時間。

編輯: 這裏的佈局文件I添加膨脹佈局成:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/scrollView" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#f6ff45"> 
     <LinearLayout 
      android:id="@+id/map" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:background="#43ff44" 
      android:orientation="vertical" 
      android:layout_margin="10dp" 
      android:layout_gravity="center" 
      android:layout_marginTop="15dp"> 

</LinearLayout> 
</ScrollView> 

我還忘了提及,添加3個或更多這些佈局後,我意識到有一個在端不必要空的空間。 :\

+0

是您正在使用的垂直或水平滾動視圖的子項的LinearLayout? – Blackbelt 2014-10-01 14:52:30

+0

請發佈您的ScrollView的XML細節 – 2014-10-01 14:54:20

+0

我已經發布了主佈局文件,請查看它。謝謝! – 2014-10-01 15:23:31

回答

0

如果在ScrollView中有一些android:layout_gravitygravity屬性,可能是原因。嘗試刪除它,或使其成爲center_horizontal

+0

我已經發布了主佈局文件,請查看。謝謝! – 2014-10-01 15:23:50

0

試試這個代碼爲您的佈局文件;

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/scrollView" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#f6ff45"> 
     <LinearLayout 
      android:id="@+id/map" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:background="#43ff44" 
      android:orientation="vertical" 
      android:layout_margin="10dp" 
      android:layout_gravity="center" 
      android:layout_marginTop="15dp"> 

</LinearLayout> 
</ScrollView> 

正如我前面提到的,android:layout_gravity="center"這個LinearLayout中導致此問題。因爲它不僅在水平方向居中,而且在內容中居中。這意味着當它們長於可用高度時,中心部分將出現。我只將其更改爲android:layout_gravity="center_horizontal",問題得到解決。