Android實現帶動畫的下拉重新整理RecyclerView
不廢話,先看效果,嗯…看起來有點卡,截圖軟體的問題:
圖中普通列表是ListView樣式,沒有設定Header和Footer時使用預設的下拉重新整理和上拉載入。而宮格列表和瀑布流列表使用的是自定義Header和Footer的下拉重新整理和上拉上拉載入。
用法:
Gradle:
dependencies { compile 'com.sch.rfview:AnimRefreshRecyclerView:1.0.0' }
Eclipse的同學們可以自己下載原始碼拷貝java檔案到自己的工程(別忘了引用RecyclerView的包哦)。
程式碼中的配置參考下面的用法程式碼片段,除了RecyclerView自帶的方法,其他方法都是可選的。
部落格:http://blog.csdn.net/u014165119/article/details/47321943
專案地址:https://github.com/shichaohui/AnimRefreshRecyclerViewDemo
專案中包含一個demo(普通Android工程)和Android Library,感興趣的同學可以自己下載原始碼和Demo。
用法程式碼片段:
// 自定義的RecyclerView, 也可以在佈局檔案中正常使用 mRecyclerView = new AnimRFRecyclerView(getActivity()); // 頭部 headerView = LayoutInflater.from(getActivity()).inflate(R.layout.header_view, null); // 腳部 footerView = LayoutInflater.from(getActivity()).inflate(R.layout.footer_view, null); // 根據列表的不同效果選擇不同的佈局管理器 // 使用重寫後的線性佈局管理器 mRecyclerView.setLayoutManager(new AnimRFLinearLayoutManager(getActivity())); // 使用重寫後的格子布局管理器 // mRecyclerView.setLayoutManager(new AnimRFGridLayoutManager(getActivity(), 2)); // 使用重寫後的瀑布流佈局管理器 // mRecyclerView.setLayoutManager(new AnimRFStaggeredGridLayoutManager(3, StaggeredGridLayoutManager.VERTICAL)); // 新增頭部和腳部,如果不新增就使用預設的頭部和腳部,addHeaderView()和setHeaderImage()必須同時使用 // mRecyclerView.addHeaderView(headerView); // 設定頭部的最大拉伸倍率,預設1.5f,必須寫在setHeaderImage()之前 // mRecyclerView.setScaleRatio(2.0f); // mRecyclerView.setHeaderImage((ImageView) headerView.findViewById(R.id.iv_hander)); // mRecyclerView.addFootView(footerView); // 設定重新整理動畫的顏色 mRecyclerView.setColor(Color.RED, Color.WHITE); // 設定頭部恢復動畫的執行時間,預設1000毫秒 mRecyclerView.setHeaderImageDurationMillis(1200); // 設定拉伸到最高時頭部的透明度,預設0.5f mRecyclerView.setHeaderImageMinAlpha(0.6f); // 設定介面卡 mRecyclerView.setAdapter(new MyAdapter()); // 設定重新整理和載入更多資料的監聽,分別在onRefresh()和onLoadMore()方法中執行重新整理和載入更多操作 mRecyclerView.setLoadDataListener(new AnimRFRecyclerView.LoadDataListener() { @Override public void onRefresh() { // 開啟執行緒重新整理資料 new Thread(new MyRunnable()).start(); } @Override public void onLoadMore() { // 開啟線載入更多資料 new Thread(new MyRunnable()).start(); } });
在重新整理和載入過更多完成之後呼叫程式碼停止動畫:
// 重新整理完成後呼叫,必須在UI執行緒中 mRecyclerView.refreshComplate(); // 載入更多完成後呼叫,必須在UI執行緒中 mRecyclerView.loadMoreComplate();
相關文章
- 說說在 Android 的 RecyclerView 中如何實現下拉刷AndroidView
- android開發(3):列表listview的實現 | 下拉重新整理AndroidView
- Android 動畫實現Android動畫
- 【Android初級】如何實現一個有動畫效果的自定義下拉選單Android動畫
- Android 動畫框架實現Android動畫框架
- Android從零擼美團(二) - 仿美團下拉重新整理自定義動畫Android動畫
- Android從零擼美團(二) – 仿美團下拉重新整理自定義動畫Android動畫
- Android 列表(ListView、RecyclerView)不斷重新整理最佳實踐AndroidView
- 給RecyclerView擴充套件下拉重新整理上拉載入View套件
- Android recyclerview刪除item重新整理列表AndroidView
- Android RecyclerView 區域性重新整理原理AndroidView
- iOS自定義MJRefresh上拉和下拉重新整理動畫iOS動畫
- 移動端用下拉重新整理的方式實現上拉載入
- Android動畫實現繪製原理Android動畫
- 短視訊商城系統,自動更改每次下拉後的重新整理動畫動畫
- 如何實現上拉載入,下拉重新整理?
- Flutter 實現下拉重新整理&上拉載入Flutter
- React Native 實現自定義下拉重新整理元件React Native元件
- [kotlin]帶分類的RecyclerView通用實現新思路KotlinView
- 細談RecyclerView:(二)重新整理閃爍?不存在的,帶你瞭解RecyclerView區域性重新整理View
- recyclerView的側拉效果。上拉載入。下拉重新整理,點選事件等等View事件
- Android 時間軸的實現(RecyclerView更簡單)AndroidView
- Android實現RecyclerView巢狀流式佈局AndroidView巢狀
- RecyclerView重新整理View
- 對RecyclerView Item做動畫View動畫
- SmartRefreshLayout+BaseRecyclerviewAdapterHelper使用MVP方式實現下拉重新整理ViewAPTMVP
- Android 自定義帶動畫的柱狀圖Android動畫
- [轉]Android輕鬆實現RecyclerView懸浮條AndroidView
- Android——Activity切換炫酷動畫實現Android動畫
- Movable-view實現列表的下拉重新整理上拉載入View
- 小程式scroll-view自身下拉重新整理的實現分享View
- 實現移動端上拉載入和下拉重新整理的vue外掛(mescroll.js)VueJS
- android 自定義帶動畫的統計餅圖Android動畫
- RecyclerView動畫原始碼淺析View動畫原始碼
- Android RecyclerView實現頭部懸浮吸頂效果AndroidView
- [譯] 在 Android 上實現 Google Inbox 的樣式動畫AndroidGo動畫
- Android中的RecyclerViewAndroidView
- vue 實現上拉載入下拉重新整理(思路賊清晰)Vue
- Android View篇之啟動頁倒數計時動畫的實現AndroidView動畫