ScrollView滚动效果

ALDRIDGE 2011-09-29

ScrollView也是一个Layout布局,可以让它内部的数据显示不下的时候出现滚动条,要注意的是不能在ScrollView中放多个组 件,如果放了多个组件,会出现如下错误:ERROR/AndroidRuntime(271): Caused by: java.lang.IllegalStateException: ScrollView can host only one direct child (ScrollView只能包裹一个直接子元素)

我们看一个例子:

<?xml version="1.0" encoding="utf-8"?>

    <ScrollView android:id="@+id/ScrollView01"

android:layout_width="wrap_content"android:layout_height="wrap_content"

xmlns:android="http://schemas.android.com/apk/res/android">

<TableLayoutandroid:id="@+id/TableLayout01"

android:layout_width="fill_parent"android:layout_height="fill_parent"

android:stretchColumns="0" xmlns:android="

android:layout_span="2"android:layout_gravity="center"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

            </TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#ff00ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#ff00ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#ee00ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#ee00ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#dd00ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#dd00ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#cc00ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#cc00ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#bb00ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#bb00ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#aa00ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#aa00ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#9900ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#9900ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#8800ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#8800ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#7700ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#7700ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#6600ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#6600ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#5500ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#5500ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#4400ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#4400ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#3300ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#3300ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#2200ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#2200ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#1100ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#1100ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TableRow android:layout_width="fill_parent"

android:layout_height="30dip">

<TextViewandroid:background="#0000ff00"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

<TextViewandroid:text="#0000ff00"android:background="#000"

android:textSize="30dip"android:textColor="#fff"

android:layout_width="fill_parent"android:layout_height="fill_parent">

</TextView>

</TableRow>

            <TextView android:text="色彩透明度测试" android:textSize="18dip"

android:gravity="center_horizontal"android:layout_width="fill_parent"

android:layout_height="wrap_content">

</TextView>

        </TableLayout> </ScrollView>

例子的显示效果:

向下滚屏后的截图:

相关推荐