2011-01-31 115 views
38

我是Android應用開發新手。現在我正在設計一個應用程序,因爲我有一個Activity,它包含了一些內容,但這些內容是更多內容超出屏幕的內容。現在我想向用戶展示該內容,但我不知道如何將滾動條保持到Activity如何將滾動條添加到相對佈局?

如何使用滾動條使用RelativeLayout向最終用戶顯示總內容?

回答

84

您好,請參閱以下示例代碼的xml文件。

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/ScrollView01" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 

    <RelativeLayout 
     android:id="@+id/RelativeLayout01" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" > 

     <LinearLayout 
      android:id="@+id/LinearLayout01" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:orientation="vertical" > 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 

      <TextView 
       android:id="@+id/TextView01" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_margin="20dip" 
       android:text="@+id/TextView01" > 
      </TextView> 
     </LinearLayout> 
    </RelativeLayout> 

</ScrollView> 
+5

`RelativeLayout`is超過本法視圖層次,IMO。 – 2012-12-07 08:37:54

5

你想附上一個scrollView

5

檢查下面的示例佈局文件

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/ScrollView01" android:layout_width="fill_parent" 
android:layout_height="fill_parent" android:background="@color/white"> 
<RelativeLayout android:layout_height="fill_parent" 
    android:layout_width="fill_parent"> 
    <ImageView android:id="@+id/image1" 
     android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
     android:layout_marginLeft="15dip" android:layout_marginTop="15dip" 
     android:src="@drawable/btn_blank" android:clickable="true" /> </RelativeLayout> </ScrollView> 
2

下面的代碼應該做的伎倆:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/ScrollView01" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" > 

<RelativeLayout 
android:id="@+id/RelativeLayout01" 
android:layout_width="fill_parent" 
android:layout_height="638dp" > 

<TextView 
    android:id="@+id/textView1" 
    style="@style/normalcode" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginTop="64dp" 
    android:text="Email" /> 

<TextView 
    android:id="@+id/textView2" 
    style="@style/normalcode" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/textView1" 
    android:layout_marginTop="41dp" 
    android:text="Password" /> 

<TextView 
    android:id="@+id/textView3" 
    style="@style/normalcode" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignRight="@+id/textView2" 
    android:layout_below="@+id/textView2" 
    android:layout_marginTop="47dp" 
    android:text="Confirm Password" /> 

<EditText 
    android:id="@+id/editText1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/textView1" 
    android:layout_alignBottom="@+id/textView1" 
    android:layout_alignParentRight="true" 
    android:layout_toRightOf="@+id/textView4" 
    android:inputType="textEmailAddress" > 

    <requestFocus /> 
</EditText> 

<EditText 
    android:id="@+id/editText2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/textView2" 
    android:layout_alignBottom="@+id/textView2" 
    android:layout_alignLeft="@+id/editText1" 
    android:layout_alignParentRight="true" 
    android:inputType="textPassword" /> 

<EditText 
    android:id="@+id/editText3" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/textView3" 
    android:layout_alignBottom="@+id/textView3" 
    android:layout_alignLeft="@+id/editText2" 
    android:layout_alignParentRight="true" 
    android:inputType="textPassword" /> 


<TextView 
    android:id="@+id/textView4" 
    style="@style/normalcode" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_below="@+id/textView3" 
    android:layout_marginTop="42dp" 
    android:text="Date of Birth" /> 

<DatePicker 
    android:id="@+id/datePicker1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_below="@+id/textView4" /> 

<TextView 
    android:id="@+id/textView5" 
    style="@style/normalcode" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/datePicker1" 
    android:layout_marginTop="60dp" 
    android:layout_toLeftOf="@+id/datePicker1" 
    android:text="Gender" /> 

<RadioButton 
    android:id="@+id/radioButton1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/textView5" 
    android:layout_alignBottom="@+id/textView5" 
    android:layout_alignLeft="@+id/editText3" 
    android:layout_marginLeft="24dp" 
    android:text="Male" /> 

<RadioButton 
    android:id="@+id/radioButton2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignLeft="@+id/radioButton1" 
    android:layout_below="@+id/radioButton1" 
    android:layout_marginTop="14dp" 
    android:text="Female" /> 

<Button 
    android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_marginBottom="23dp" 
    android:layout_toLeftOf="@+id/radioButton2" 
    android:background="@drawable/rectbutton" 
    android:text="Sign Up" /> 

14

只要把你的RelativeLayout內部ScrollView

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/ScrollView01" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    ------- here RelativeLayout ------ 
</ScrollView> 
0

滾動型自動添加如果它的內容比它的容量(當你在文本框輸入像更突然滾動條顯示出來時,你的文字大小小於其初始尺寸更大的滾動條。 但請注意,某些容器(例如,listview)自身具有滾動條,並且在將它們放入滾動視圖時可能無法正常工作。

1

我用

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/ScrollView01" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" > 

<RelativeLayout 

和完美的作品