1

ユーザーがリストの一番下に達したときに、より多くのデータをロードするListViewを作成することがどういうわけか可能であることを私は知っています。ただし、LinearLayoutを使用しているScrollViewを使用しており、これら2つのコンポーネントはスクロールなどでうまく機能します。しかし、どうすればよいかわからないので、無限にスクロールします。

画面に表示されているLinearLayoutの内容を読み取るものを追加する必要があると思います。これにより、(現在の位置とビューの高さを使用して)表示されているLinearLayoutの下部であると計算されます。イベントをトリガーします。
しかし、私が言ったように、私はこれを達成する方法がわかりません。ですから、誰かが私に助けを与えることができれば、私は非常に感謝するでしょう。

編集:私はここStackOverflowでこの投稿を見つけましたscrollViewがAndroidで一番下に達したときにイベントをトリガーする方法は?、しかし私は答えをどうするかわかりません:

要件を考えると、BaseAdapterを拡張する可能性があります(別のメカニズムを利用するCursorAdapterとは対照的です)。

そのためのスニペットは次のとおりです。

public View getView(int position, View convertView, ViewGroup parent) {
    if (position == backingLinkedList.size()) {
        //get more items and add them to the backingLinkedList in a background thread
        notifyDataSetChanged();
    }
}
4

2 に答える 2

0

スクロールビューの一番下に到達したときにイベントをトリガーできる場合は、データを保持する独自のタイプのビューを作成してみてください。ビューの一番下に到達したら、次のデータをビュー クラスにロードし、スクロール ビューのレイアウトに追加します。

したがって、基本的に、表示内容のセクションを保持するクラスを作成します。最初のものをスクロールビューに追加します。一番下に到達したら、次のデータを保持する別のビューを作成して使用しますscrollviews_layout.addview(view_holding_the_new_data)

于 2011-03-27T06:57:43.467 に答える