ScrollView滚动问题?

时间:2011-08-29 06:07:08

标签: android scrollview

我在我的布局中使用ScrollView,在onCreate方法中我使用了scrollTo(0,50)方法,所以最初当我的布局出现时,scrollview应该滚动到位置(0,50)。 但它似乎没有用。

我的代码如下

ScrollView scroll;
Button btn;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    scroll = (ScrollView) findViewById(R.id.scrollView1);
    btn = (Button) findViewById(R.id.button1);
    btn.setOnClickListener(this);
    scroll.scrollTo(0,50);
}

我没有问到哪里有问题请帮忙

我的ScrollView XML代码是..

<ScrollView android:layout_width="match_parent" android:id="@+id/scrollView1"
    android:layout_height="200dip" >
    <LinearLayout android:id="@+id/linearLayout1"
        android:layout_width="match_parent" android:layout_height="match_parent">
        <TableLayout android:layout_width="wrap_content"
            android:id="@+id/tableLayout1" android:layout_height="match_parent">
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 1" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 2" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 3" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 4"  />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 5" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 6" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 7" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 8" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 9" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 10" />
            </TableRow>
            <TableRow android:layout_width="wrap_content" android:id="@+id/tabler"
                android:layout_height="wrap_content">
                <TextView android:layout_width="wrap_content" android:id="@+id/tabler"
                    android:layout_height="30dip" android:text="ROWS 11" />
            </TableRow>

        </TableLayout>
    </LinearLayout>
</ScrollView>

1 个答案:

答案 0 :(得分:3)

你可以试试吗

//scroll.scrollTo(0,50);

btn.postDelayed(new Runnable() {            
    @Override
    public void run() {
        //scroll.smoothScrollBy(0,50);              
        scroll.scrollTo(0,50);
    }
}, 500);

更好

btn.post(new Runnable() {           
    @Override
    public void run() {
        //scroll.smoothScrollBy(0,50);              
        scroll.scrollTo(0,50);
    }
});