国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁/技術文章
文章詳情頁

android - 自定義下拉刷新列表.

瀏覽:144日期:2024-08-25 13:57:03

問題描述

這里面的代碼看不懂什么意思

public class MyListe extends ListView {

private View v;private int height;int anxiaY;int huadongY;@TargetApi(Build.VERSION_CODES.JELLY_BEAN) public MyListe(Context context, AttributeSet attrs) { super(context, attrs); v = View.inflate(context, R.layout.item2, null); v.measure(0, 0); height = v.getMeasuredHeight(); v.setPadding(0, -height, 0, 0); addHeaderView(v);}@TargetApi(Build.VERSION_CODES.HONEYCOMB) @Overridepublic boolean onTouchEvent(MotionEvent ev) { switch (ev.getAction()) { case MotionEvent.ACTION_DOWN:anxiaY = (int) ev.getY();break; case MotionEvent.ACTION_UP:setPadding(0, -height, 0, 0);v.invalidate();invalidate();break; case MotionEvent.ACTION_MOVE:huadongY = (int) ((ev.getY()-anxiaY)*0.3);setPadding(0, huadongY-height, 0, 0);v.invalidate();invalidate();break; } return super.onTouchEvent(ev);}

}

問題解答

回答1:

不知道你是哪部分沒看懂還是都看不懂,這段代碼其實并沒多復雜,把它分解一下就好理解了。我分兩部分說一下。

一是構造器構造器初始化向listview裝載一個headerview,困惑之處可能在于measure和setPadding,一個view加載出來若尚未可見,它的width和height會是-1,所以需要手動調用measure去強制measure一下view的空間占用情況,目的是為了拿到height為setPadding做準備;到了setPadding,參數構成是left, top, right, bottom,傳入的是top參數,請看好是-height,在android上,view的位置并非只有屏幕上可見的那點空間,它可以抽象延伸到屏幕外更寬廣的區域,所以-height的意思是設置view的左上角的位置為屏幕外height,意思就是讓headerview初始化時不顯示在屏幕可見范圍內,看我畫的草圖可能好理解一點,草圖左上角黃點就是構造器初始化后的坐標示意。android - 自定義下拉刷新列表.

二是touch事件處理構造器添加的不可見headerview如何顯示?是不是就是改變headerview的paddingTop值就可以了?是的,就是那樣!那怎么時候改變,改變多少?是不是就是應該手指在listview上滑動多少就改變多少呢?是的,就是那樣,了解這個過程,再看touch事件處理就很好理解了。ACTION_DOWN即手指按下的動作,anxiaY即是按下的點的y坐標,ACTION_MOVE即手指滑動的動作,記錄滑動過程手指觸點y坐標的變化,和anxiaY值做比較,就得出手指滑動的距離,就可以做下拉動作了,不斷的設置headerview的paddingTop值和刷新view,就可以達到headerview跟隨手指滑動距離滑入或滑出屏幕了。ACTION_UP即手指觸點離開屏幕,停止滑動,這時重新設置paddingTop值為-height,headerview就復位了,整體離開屏幕,回到構造器初始化時的位置,完成整個下拉過程。

回答2:

構造里面過去高度,然后監聽Touch事件,更新頭部位子

相關文章:
主站蜘蛛池模板: 精品国产自在现线看久久 | 亚洲视频手机在线观看 | 久久综合综合久久 | a免费网站 | 亚久久伊人精品青青草原2020 | 日本理论片免费高清影视在线观看 | 欧美视频精品在线观看 | 中美日韩在线网免费毛片视频 | www.xxx.国产| 深夜爽爽福利gif在线观看 | 国产精品黄在线观看免费 | 国产一区日韩二区欧美三 | 91原创视频在线观看 | 成人黄色在线免费观看 | 日本香蕉一区二区三区 | 国产免费久久精品久久久 | 成人久久网站 | 久视频免费精品6 | 亚洲免费毛片 | 亚洲综合99 | 国产精品久久一区二区三区 | 国内外成人免费在线视频 | 成年人免费的视频 | 全部在线美女网站免费观看 | 在线看片a| 久久精品视频99精品视频150 | 国产精品高清视亚洲一区二区 | 91久久亚洲精品一区二区 | 久久亚洲精品tv | 美女视频一区二区三区在线 | 免费特黄 | 亚洲国产毛片aaaaa无费看 | 国产精品久久九九 | 好吊妞998视频免费观看在线 | 精品国产一区二区三区不卡蜜臂 | 国内精品久久久久久久久 | 久久中文字幕在线观看 | 国产精品麻豆一区二区三区v视界 | 亚洲国产日韩欧美综合久久 | 日日碰日日操 | 久久久久国产精品免费 |