我在ViewPager中有一个简单的ListView,在屏幕的右下角有一个浮动操作栏。

我想对它实现快速返回模式,以便当我滚动ListView时,FAB向下移动屏幕,并在相反方向滚动。

提前致谢。

编辑:

list.setAdapter(new QuickReturnAdapter(adapter));
            quickReturnAttacher = QuickReturnAttacher.forView(list);
            quickReturnAttacher.addTargetView(floatMenu, AbsListViewScrollTarget.POSITION_BOTTOM, dpToPx(context, 400));

            if (quickReturnAttacher instanceof AbsListViewQuickReturnAttacher) {
                // This is the correct way to register an OnScrollListener.
                // You have to add it on the QuickReturnAttacher, instead
                // of on the viewGroup directly.
                final AbsListViewQuickReturnAttacher attacher = (AbsListViewQuickReturnAttacher) quickReturnAttacher;
                attacher.addOnScrollListener(new AbsListView.OnScrollListener() {
                    @Override
                    public void onScrollStateChanged(AbsListView view, int scrollState) {

                    }

                    @Override
                    public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

                    }
                });
            }


然后,我正在使用quickReturnAttacher.setOnItemClickListener,这是行不通的。

最佳答案

该功能已经有一个开源库。
https://github.com/felipecsl/QuickReturn

尝试这个:

    final AbsListViewQuickReturnAttacher attacher =   (AbsListViewQuickReturnAttacher) quickReturnAttacher;
    attacher.addOnScrollListener(this);
    attacher.setOnItemClickListener(this);

});


对我来说,这是正常的,在回调函数中传递的位置是正确的。
您必须将点击侦听器注册到附件,而不是列表。

您如何在类setOnItemClickListener中找不到方法AbsListViewQuickReturnAttacher

07-27 16:43