3

StaggeredGridView に Scroll リスナーを追加しようとしましたが、
Github の URL https://github.com/maurycyw/StaggeredGridViewを見ることができる実装がないことを追加する方法がわかりません ありがとう

4

3 に答える 3

10

これが私が問題に対処しようとした方法です

まず、プライベート インスタンスを追加します。

private AbsListView.OnScrollListener mOnScrollListener;

public setOnClickListener メソッドを追加します。

public void setOnScrollListener (AbsListView.OnScrollListener l) {
    mOnScrollListener = l;
}

次に、 trackMotionScroll に、リスナーを呼び出す行を追加します。

private boolean trackMotionScroll(int deltaY, boolean allowOverScroll) {
.
.
.

/* HERE we call onScroll */
if (mOnScrollListener != null) {
    mOnScrollListener.onScroll(null, getFirstPosition(), getChildCount(), this.mItemCount);
}

return deltaY == 0 || movedBy != 0;
}

独自のメソッドを実装することもできますonScrollStateChanged (AbsListView view, int scrollState)が、私は怠惰すぎて実装できません:P

最後に、呼び出しgridView.setOnScrollListener(listener)てリスナーを StaggeredGridView に渡すことができます

それが役に立てば幸い。

于 2013-04-02T12:39:43.923 に答える
1

私は同じ問題に遭遇しました。そのため、スクロール リスナーのサポートを自分で追加しました。プロジェクトは github で見つけることができます

于 2013-04-25T09:18:12.970 に答える