我有一个使用listview的活动的布局xml文件。 它工作正常,但它始终从列表视图的顶部开始。不是从布局的顶部。我测试了
listView.setSelection(0);
它对我不起作用。 如何从顶部显示屏幕?
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout
android:id="@+id/topLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="@color/darkbackground"
>
<include layout="@layout/subtitle_bar" />
<TextView
android:id="@+id/rankHistory"
android:text="@string/rankHistory"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="20px"
android:textSize="24sp"
android:textStyle="bold"
android:textColor="#ffffffff"
android:gravity="center"
android:layout_gravity="center_horizontal"
></TextView>
<ListView android:id="@+id/list"
android:layout_marginTop="15px"
android:layout_width="fill_parent"
android:layout_height="500px"
android:dividerHeight="15px"
android:divider="@color/darkbackground"
>
</ListView>
</LinearLayout>
</ScrollView>
答案 0 :(得分:2)
试试这个:
listView.smoothScrollToPosition(0);
您可以在此下载示例项目http://www.hrupin.com/2011/10/14/how-to-scroll-listview-to-top-or-other-position
希望,它对你有帮助!
答案 1 :(得分:1)
您不应将ListView放在ScrollView中。将ListView上方的项放在单独的xml文件中,然后使用listView.addHeaderView(view);