2014-09-22 78 views
1

我有一個簡單的android應用程序,它包含scrollview,裏面有absolutelayout,我希望它們位於中心。當我在Eclipse中看到圖形化的佈局absolutelayout是在屏幕的像這樣的中心:android absolutelayout align center

這裏是我的代碼:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="400dp" 
android:layout_height="fill_parent" 
android:background="@drawable/bg" 
android:gravity="center_vertical" > 

<AbsoluteLayout 
    android:id="@+id/AbsoluteLayout1" 
    android:layout_width="284dp" 
    android:layout_height="562dp" 
    android:layout_marginBottom="40dp" 
    android:layout_marginLeft="18dp" 
    android:layout_marginRight="18dp" 
    android:layout_marginTop="26dp" 
    android:background="@drawable/bg4" 
    > 

    <TextView 
     android:id="@+id/textView2" 
     android:layout_width="244dp" 
     android:layout_height="500dp" 
     android:layout_x="20dp" 
     android:layout_y="81dp" 
     android:text="Info here" 
     android:textColor="#ffffff" /> 

    </AbsoluteLayout> 

</ScrollView> 

回答

0

首先,AbsoluteLayout已經過時,所以你可能不應該使用它。我會建議RelativeLayout。

對於滾動型,確保提供了android:fillViewport =「真」,然後設置子佈局的layout_width =「match_parent」像這樣:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fillViewport="true" 
    android:background="#444444"> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center_vertical" > 

     <Button android:id="@+id/button" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerHorizontal="true" 
      android:text="Button"/> 

     <TextView 
      android:id="@+id/textView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerHorizontal="true" 
      android:layout_below="@id/button" 
      android:text="Info here" 
      android:textColor="#ffffff" /> 

    </RelativeLayout> 

</ScrollView> 

這將處理的情況下滾動型的子寬度小於ScrollView本身的寬度。

+0

我有一個滾動型裏面,因爲我不能只用滾動型和裏面的TextView或者如果我沒有按鈕這會給我錯誤,這就是爲什麼我使用滾動視圖內的佈局 – 2014-09-22 22:31:49

+0

我明白,ScrollView只能有一個孩子,但我想知道爲什麼你需要ScrollView? – 2014-09-22 22:44:33

+0

因爲我使用的是長段落,我嘗試使用RelativeLayout而不是absolutelayout,但它不起作用,它仍然向左。 – 2014-09-22 23:39:58

0

您不必爲此使用滾動視圖。有幾個XML屬性可以添加到TextView中以使其可滾動。

使用此:

android:maxLines = "AN_INTEGER" 

android:scrollbars = "vertical" 
在Java類

然後:

yourTextView.setMovementMethod(new ScrollingMovementMethod())