感谢您花费宝贵的时间阅读此主题。 我正在开发一个Android应用程序,在recyclerview的项目中有recyclelerview。
我想在滚动recyclelerview(parent recyclelerview)到达第一项父项的上部位置时执行某项任务(即;如果第一项的上部位置完全可见)。
到目前为止我已经尝试了这个但是没有达到我想要的结果
recyclerView.addOnScrollListener(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);
LinearLayoutManager linearLayoutManager1 = (LinearLayoutManager) recyclerView.getLayoutManager();
int displayedPosition = linearLayoutManager1.findFirstCompletelyVisibleItemPosition();
if(displayedPosition==0){
//Is this the place where top position of first item is reached ?
((ControllableAppBarLayout) getActivity().findViewById(R.id.app_bar_layout)).expandToolbar(true);
}
}
});
答案 0 :(得分:0)
通过使用这两种方法的组合,您可以存档所需的内容。
if (linearLayoutManager1.findFirstVisibleItemPosition() == 0
&& linearLayoutManager1.findFirstCompletelyVisibleItemPosition() == 0) {
// reach first fully visible item.
}
来自操作问题代码段..