2010-11-23 55 views
11

我在佈局中有3個文本視圖,其中文本在我的機器人2的底部剪下一點點...我如何確保整個文本是可見的,並且用戶可以向下滾動(只需用他們的手指) ,看到我的文本的其餘部分?如果ScrollView只支持一個直接的孩子,我該如何使整個佈局可以滾動?

謝謝!

編輯:

<?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"> 

    <ImageButton android:id="@+id/ImageButton01" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@drawable/def" 
    android:layout_gravity="top|center"> 
    </ImageButton> 

<TextView android:id="@+id/oneView" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="@string/one_def" 
android:layout_gravity="left|center" 
android:textSize="13dip"></TextView> 

<TextView android:text="@string/two_def" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_gravity="left|center" 
android:id="@+id/twoView" 
android:textSize="13dip"></TextView> 

<TextView android:text="@string/threedef_def" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_gravity="left|center" 
android:id="@+id/threeView" 
android:textSize="13dip"></TextView> 


</LinearLayout> 

回答

26

只需使用ScrollView包裝當前的LinearLayout。所以它應該像這樣:

<?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"> 

    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <ImageButton ... /> 
     <TextView ... /> 
     <TextView ... /> 
     <TextView ... /> 

    </LinearLayout> 
</ScrollView> 
10

滾動型的直接孩子應該是支持多個孩子,如RelativeLayout的或LinearLayout中另一個佈局。

+0

我可以潛在地封裝一個完整的flipper作爲scrollview嗎? – Sapp 2010-11-23 18:57:13

2

工作完美。

這裏是我的佈局,作爲一個滾動內容項目的例子,上面有兩個標題,它保持不動。

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
android:id="@+id/mainMenu" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" 
android:background="#FFFFFFFF" 
xmlns:android="http://schemas.android.com/apk/res/android" 
> 
    <FrameLayout 
    android:id="@+id/widget112" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    > 
     <ImageView 
     android:id="@+id/chemo_pro_header" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/chemo_pro_header" 
     > 
     </ImageView> 
     <ImageButton 
     android:id="@+id/menu_btn" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/menu_btn_off" 
     android:background="@null" 
     android:layout_gravity="right" 
     android:padding="8px" 
     > 
     </ImageButton> 
    </FrameLayout> 
    <ImageView 
    android:layout_width="wrap_content" 
    android:id="@+id/news_head" 
    android:src="@drawable/news_head" 
    android:layout_height="wrap_content"> 
    </ImageView> 
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
      <TextView android:layout_marginLeft="6dip" android:text="Monday, November 29th, 2010" android:id="@+id/newsDateStamp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:typeface="serif" android:textStyle="italic" android:textColor="#ff999999"></TextView> 
      <TextView android:layout_marginLeft="6dip" android:text="Normal Article Titles Fit on These Lines and have room to be this long" android:textSize="16sp" android:typeface="serif" android:textStyle="bold" android:textColor="#ff000000" android:id="@+id/newsTitle" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView> 
      <TextView android:layout_marginLeft="6dip" android:text="Article source" android:id="@+id/newsSource" android:layout_width="wrap_content" android:layout_height="wrap_content" android:typeface="serif" android:textStyle="italic" android:textColor="#ff999999"></TextView> 
      <ImageView 
      android:layout_width="wrap_content" 
      android:id="@+id/news_image" 
      android:src="@drawable/news_image" 
      android:layout_height="wrap_content" android:layout_gravity="center"> 
      </ImageView> 
      <TextView android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras in volutpat enim. Donec tempus vestibulum risus in pellentesque. Etiam eget lorem at velit facilisis dapibus.\n\nNunc dolor sem, semper vel vestibulum eu, ultrices tempus augue. Donec ligula erat, tempor dignissim imperdiet et, rutrum sed nisi. Praesent dignissim nulla ullamcorper metus facilisis auctor. Duis elementum commodo dictum. Duis rhoncus hendrerit lectus in tincidunt. Ut est neque, rutrum ut auctor ac, aliquet ut massa. Nullam at felis ipsum. Curabitur adipiscing sodales massa, sed lobortis lectus ultrices quis. Integer lobortis cursus tellus sed tempus. Ut convallis ullamcorper interdum. Integer iaculis feugiat ultricies.\n\nNunc dolor sem, semper vel vestibulum eu, ultrices tempus augue. Donec ligula erat, tempor dignissim imperdiet et, rutrum sed nisi. Praesent dignissim nulla ullamcorper metus facilisis auctor. Duis elementum commodo dictum. Duis rhoncus hendrerit lectus in tincidunt. Ut est neque, rutrum ut auctor ac, aliquet ut massa." android:layout_marginTop="6dip" android:layout_marginBottom="6dip" android:typeface="serif" android:id="@+id/newsBody" android:layout_marginLeft="6dip" android:layout_height="wrap_content" android:layout_width="wrap_content" android:textColor="#ff000000" android:layout_marginRight="6dip"></TextView> 
    </LinearLayout> 
    </ScrollView> 
</LinearLayout> 
0

如果要滾動整個佈局只是使滾動視圖的父母,使線性佈局或任何其它的佈局,它的第一個孩子,然後添加其他的佈局裏面那個....例如:

<scrollview> 
    <linearLayout id = child1> 
    <Textview/> 
    <Textview/> 
    <button/> 
    <LinearLayout> 
     <textview/> 
    </LinearLayout 
    </LinearLayout> 
</scrollview 

這裏滾動視圖只有一個孩子'child1'休息都在裏面,因此整個佈局是可滾動的

相關問題