Android中Horizo​​ntalScrollView中的ListView

时间:2009-12-10 04:23:58

标签: android listview horizontalscrollview

我在ListView内有一个HorizontalScrollView,除了初始加载外,它完全正常。我正在从Web服务加载列表视图的数据,所以我创建了一个线程来做到这一点。获得数据后,我只需致电_myListAdapter.notifyDataSetChanged();,数据就会显示在ListView中。但是,如果ListView远离屏幕,则包含HorizontalScrollView的内容会自动滚动以显示此ListView。如何在不将notifyDataSetChanged滚动到当前视图的情况下调用ListView

以下是我如何使用布局XML文件的想法:

<HorizontalScrollView 
    android:id="@+id/my_scrollview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:scrollbars="none">

        <LinearLayout android:id="@+id/my_layout"
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:orientation="horizontal">

                <ListView android:id="@+id/my_list"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:layout_weight="1" />

        </LinearLayout>

</HorizontalScrollView>

1 个答案:

答案 0 :(得分:0)

我会尝试让您的ListView不可见,直到您调用notifyDataSetChanged()

<ListView android:id="@+id/my_list"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_weight="1"
    android:visibility="gone"/>

然后在代码中:

_myListAdapter.notifyDataSetChanged();
ListView listView = (ListView) findViewById(R.id.my_list);
listView.setVisibility(View.VISIBLE);

不确定这是否有用......值得一试。