1

PullToRefreshScrollview内にListview、FrameLayoutがあります。そして、フレームレイアウトにフラグメントをロードしています。遅延アダプターを使用してデータをリストビューにロードしています。リストビューの読み込み中にフラグメント/フレームレイアウトを見ることができます。ただし、データがリストビューにロードされ、フレームレイアウトが表示されない後、スクロールビューはリストビューの位置に自動的にスクロールします。スクロールビューを一番上までスクロールするにはどうすればよいですか? 私を助けてください。前もって感謝します

<?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/app_bg"
android:orientation="vertical" >


<com.handmark.pulltorefresh.library.PullToRefreshScrollView
    xmlns:ptr="http://schemas.android.com/apk/res-auto"
    android:id="@+id/ptrScrollView"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_marginBottom="5dp"
    android:layout_weight="1"
    android:paddingBottom="5dp"
    ptr:ptrMode="pullUpFromBottom" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <FrameLayout
            android:id="@+id/frame"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
        </FrameLayout>

        <com.xxxx.yyyy.CustomListView
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/listView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/app_bg"
            android:focusable="false"  />

        <ProgressBar
            android:id="@+id/spinner"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:visibility="gone" />
    </LinearLayout>
</com.handmark.pulltorefresh.library.PullToRefreshScrollView>



 </LinearLayout>
4

2 に答える 2

5

これが私がとったアプローチです

そのような PullToRefreshScrollView への参照があるとしましょう

PullToRefreshScrollView myRefreshScrollView = (PullToRefreshScrollView)findViewById(R.id. ptrScrollView);

実際の ScrollView オブジェクトを取得するには、次のように getRefreshableView() を呼び出す必要があります

ScrollView myScrollView =  myRefreshScrollView.getRefreshableView();

次に、このオブジェクトをスクロールします

myScrollView.scrollTo(0,0);

また

myScrollView.smoothScrollTo(0,0)
于 2013-09-26T20:29:11.710 に答える