如何以编程方式滚动ScrollView?

时间:2010-01-08 17:19:02

标签: android

我对ScrollView有一点问题。我有一个用ScrollView制作的活动布局。此滚动视图包含两个ListView。

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

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

<LinearLayout android:orientation="vertical"
    android:gravity="top" android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:background="@drawable/cmb_bg">

    <ListView android:id="@+id/accountsListView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:scrollbars="none" />

    <ListView android:id="@+id/cardsListView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:scrollbars="none" />

</LinearLayout>

在我的活动的onCreate方法中,我根据内容计算ListViews高度。

在执行期间,在活动启动时,ScrollView已经滚动了一点。

所以我尝试在onCreate结束时调用方法scrollTo(0, 0),但它没有改变任何东西。

有什么想法吗?

1 个答案:

答案 0 :(得分:6)

AHHH !!!删除ScrollView并在您的活动中只保留一个ListView。它无意以这种方式工作 。如果您想在ONE listView中拥有不同的内容 - 修改适配器或更改UI 但永远不要将不同的可滚动容器放在同一个屏幕上/彼此内部 这是一篇相关的帖子。 http://groups.google.com/group/android-developers/browse_thread/thread/e7c8df374fe31733# 从理论上讲,你可以在屏幕上拍两个listview,但是期望事情变得奇怪。我真的会使用分隔符或扩展器或只使用一个ListView重新设计它。