android Listview頭部帶控件滑動距離的判斷

網上有學多對listview的滑動距離和方向的判斷

其中滑動距離可參考文章

http://blog.csdn.net/c19344881x/article/details/50543969

滑動方向可參考

http://blog.csdn.net/wangbaochu/article/details/45503605

在對該代碼分析過程中覺得代碼過於複雜,於是想到可以通過控件距離屏幕的距離來獲取滑動距離

先給listView頭部加一個控件

 final View v = inflaters.inflate(R.layout.XXX, null,false);
        getListView().addHeaderView(v);
如果該佈局裏面有個View在最上方


    public final int  IS_VISIBLE_HEADER = 57;
 getListView().setOnScrollListener(new AbsListView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView view, int scrollState) {

            }

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

                if(headerText.getLocationOnScreen()[1]<IS_VISIBLE_HEADER){

                    // todo
                }else{
                   // todo
                }
            }
        });

其中,getLocationOnScreen()[1]代表Y方向的距離,該值就可以當成滑動距離
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章