Android向上滚动隐藏视图并向下滚动显示视图效果,如twitter

Nai*_*eBz 17 performance android android-listview

滚动向上隐藏viewpager选项卡(Home,Discover,activity)时如何像twitter一样滚动效果.或者像facebook滚动一样效果,当向下滚动显示选项视图时向上滚动隐藏选项视图(状态,照片,签入).任何示例链接都可以提供帮助.

Van*_*Jr. 5

简易解决方案

public abstract class OnScrollObserver implements AbsListView.OnScrollListener {

public abstract void onScrollUp();

public abstract void onScrollDown();

@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
}

int last = 0;
boolean control = true;

@Override
public void onScroll(AbsListView view, int current, int visibles, int total) {
    if (current < last && !control) {
        onScrollUp();
        control = true;
    } else if (current > last && control) {
        onScrollDown();
        control = false;
    }

    last = current;
}
Run Code Online (Sandbox Code Playgroud)

用法:

listView.setOnScrollListener(new OnScrollObserver() {
        @Override
        public void onScrollUp() {

        }

        @Override
        public void onScrollDown() {

        }
    });
Run Code Online (Sandbox Code Playgroud)


QVD*_*Dev 0

对此没有简单的例子。但您可以做的是跟踪您滚动的方式并相应地显示或隐藏视图

例如,获取 ListView 的第一个可见位置并跟踪它,如果它较小,那么在您知道以这种方式向上滚动之前,您可以显示视图。如果它更大,则隐藏视图。

这是一个简单的方法,如果您想要更精确,您需要使用 onTouchListeners 和运动的 y 坐标。

http://developer.android.com/reference/android/widget/ListView.html