轉載請標明原文地址:http://blog.csdn.net/yalinfendou/article/details/47707017學習
關於Android下拉刷新上拉載入,網上的Demo太多太多了,這裏不是介紹怎麼去實現下拉刷新上拉載入,而是針對下拉刷新上拉載入常常使用的一些應用場景便可了一些總結,包括了下拉刷新上拉載入過程當中遇到的一些手勢衝突問題的解決方法(僅僅能算是拋磚引玉)。優化
去年9月的時候。那時本身正在獨立作Android項目。spa
記得剛剛寫完那個ListView列表頁面(木有下拉刷新,上拉載入),僅僅有一個簡單的分頁功能,就是當ListView滑動到最底部的時候,會去請求下一頁數據,可是沒有那個載入不少其它的Footerview。公司的那僅僅產品汪過來看了我實現的效果。說:怎麼沒有下拉刷新,上拉載入啊,這可是APP的標配啊!.net
因爲那時候真的太菜,剛會Hello world不久,又要急着趕項目。雖然說後來也折騰出來了。但是我很清楚的記得那時候是很渴求有人能給我一份完美的Demo啊。blog
後來接觸的東西多了久了。發現事實上下拉刷新。上拉載入很easy,略微複雜一點的就在於某些使用場景,需要解決一些手勢衝突問題。因此。但願Demo能夠對那些不熟悉下拉刷新,上拉載入的童鞋有一點小小的幫助,大神們就飄過吧!事件
爲何Demo中沒有RecyclerView的下拉刷新上拉載入?圖片
在GIT上也找過一些,本身也嘗試寫過一些Demo,雖然說功能也能實現。但效果並不能讓本身愜意,因此這裏就不考慮ReclerView啦!ip
爲何初始化時Item時,沒有滿屏?get
因爲眼下市面上的一些APP的下拉刷新上拉載入沒有考慮Item不滿屏的狀況,會有一些異常(或許是因爲這樣的狀況很是少見)。即使是Git上。很是多人都在用的pull-to-refresh,在Item不滿屏的狀況下,上拉載入不少其它時。Loading的FooterView會緊貼在最後一個Item如下,而不是在屏幕的最底部。我的不太喜歡這樣的不友好的交互方式。博客
因爲涉及到的知識點有點雜,很是多知識點是不能去在博客中細細深究的,這裏主要介紹的是Android 下拉刷新上拉載入 多種應用場景。
Demo中包括的一些基本的知識點:View和ViewGroup的事件分發機制,DrawerLayout側滑菜單,SwipeListView滑動刪除。瀑布流照片牆效果(參考大神郭霖的代碼,作了少量修改),圖片輪播。PagerSlidingTabStrip,TabLayout,VewPager等的用法在Demo中會有部分體現,網上關於這些方面的知識點的博客太多了,我也是向他人學習的,因此建議先熟悉一下上面的知識點。至少看代碼能夠明確一些吧。
關於一個下拉刷新上拉載入控件應該注意的地方:
Demo效果圖:
看完Demo效果圖就應該上代碼和Demo源代碼了,因爲近期小忙小憂桑,另外一些下拉刷新上拉載入的應用場景沒寫完,因此代碼和Demo會在後面的博客中給出來。
說好的優化後再上傳。近期實在太忙,就把曾經的代碼放出來了,Sorry……