【发布时间】:2015-03-05 08:24:54
【问题描述】:
我正在使用带有 ScrollListener 的 RecyclerView:
mRecyclerView.setOnScrollListener(new RecyclerView.OnScrollListener()
{
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState)
{
super.onScrollStateChanged(recyclerView, newState);
}
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy)
{
super.onScrolled(recyclerView, dx, dy);
// Do my logic
}
});
当我用手指滚动时,滚动监听器触发良好。
但是当我逐步滚动时,就像这样:
mRecyclerView.scrollToPosition(LAST_POSITION);
滚动监听器没有被触发。
【问题讨论】:
-
在内部它将调用转发给布局管理器。直接尝试使用布局管理器滚动。是否滚动到预期位置?
-
是的,
mRecyclerView.scrollToPosition(LAST_POSITION)滚动到预期的位置,使用布局管理器是什么意思?mRecyclerView.getLayoutManager().scrollToPosition(LAST_POSITION)仍然没有触发 ScrollListener
标签: android android-recyclerview onscrolllistener