国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Android橫向智能刷新框架-SmartRefreshHorizontal

1treeS / 2369人閱讀

摘要:在區有不少人建議讓支持橫向刷新。但這在引發熱議,可能是那些橫向刷新庫的使用功能擴展與有很大差距。所以我自己認為要做橫向刷新庫也需要能夠像一樣的多功能與易擴展。所以一開始的時候我幾乎沒有開發橫向刷新功能的想法。

距離上次發文又過了一年,這次我給大家帶來了另一個開源庫 SmartRefreshHorizontal,下面先看看效果:

傳送門

項目地址

屬性文檔

常見問題

更新日志

源碼下載

自定義Header

Demo

下載 APK-Demo

效果演示
商品詳情 ViewPager
數據演示
由來

SmartRefreshLayout 的設計靈活多樣,擴展性高,我想這應該是它受歡迎的原因之一。
在 issue 區有不少人建議讓 SmartRefreshLayout 支持橫向刷新。
其實大家都知道橫向刷新的庫已經有了不少,我給他們的回復是使用其他現有的橫向刷新庫。
但這在 issue 引發熱議,可能是那些橫向刷新庫的使用、功能、擴展與 SmartRefreshLayout有很大差距。
所以我自己認為要做橫向刷新庫也需要能夠像 SmartRefreshLayout 一樣的多功能與易擴展。
如果直接擴展 SmartRefreshLayout 的功能使其直接支持橫向,將會增加代碼量。
然而當此時它已經足夠龐大,并且也有不少人抱怨它太大需要分包細化功能。所以一開始的時候我幾乎沒有開發橫向刷新功能的想法。
因為用到橫向刷新的應用場景比豎向刷新少很多,我自己也很少會用到這樣的場景。
如果為了實現一個我自己不常用的功能庫要花費我太多時間和精力實在劃不來,僅僅實現一個簡單的橫向刷新又沒有必要...

原理

終于!有一天我在開發旋轉動畫過程中,產生了一個奇妙的想法:如果把 SmartRefreshLayout 旋轉90度會怎樣?
然后開始做試驗:把 SmartRefreshLayout 旋轉90度,再把 Content 旋轉-90度。結果竟然真的可以用??!
這樣就不用讓我花大量時間精力去做橫向刷新代碼實現,SmartRefreshLayout 原有的所有功能多可以直接使用,
之前設計的十多個 Header 和 Footer 也可以不用任何修改直接使用!這讓我產生了開發橫向刷新庫的動力。
于是基于這個試驗想法就誕生了這個 SmartRefreshHorizontal 庫 !

SmartRefreshHorizontal 作為 SmartRefreshLayout 的擴展庫,實現了橫向刷新和加載的功能,
雖然是獨立的開源庫,但是并沒有重復做實現,
而是對 SmartRefreshLayout 做了封裝和轉換,使其支持橫向刷新。
所以 SmartRefreshHorizontal 繼承了 SmartRefreshLayout 所有的特性,只是方向改成了橫向。

明白了 SmartRefreshHorizontal 與 SmartRefreshLayout 的關系,那么大家在使用本庫的使用同時也要依賴
SmartRefreshLayout,并且版本要大于 1.1.0-beta-1 ,否則會出現找不到類的錯誤。

簡單用例 1. 在 build.gradle 中添加依賴
    implementation "com.scwang.smartrefresh:SmartRefreshHorizontal:1.0.0-beta-1"
    implementation "com.scwang.smartrefresh:SmartRefreshLayout:1.1.0-beta-1"http://必須依賴 版本 1.1.0-beta-1 以上

    //androidx
    implementation "com.scwang.smartrefresh:SmartRefreshHorizontal:1.0.0-andx-1"
    implementation "com.scwang.smartrefresh:SmartRefreshLayout:1.1.0-andx-16"http://必須依賴 版本 1.1.0-andx-16 以上
2. 在XML布局文件中添加 SmartRefreshHorizontal


    
3. 在 Activity 或者 Fragment 中添加代碼
   RefreshLayout refreshLayout = root.findViewById(R.id.refreshLayout);
   refreshLayout.setRefreshHeader(new MaterialHeader(root.getContext()));
   refreshLayout.setRefreshFooter(new RefreshFooterWrapper(new MaterialHeader(root.getContext())), -1, -2);
混淆

SmartRefreshHorizontal 不需要添加混淆過濾代碼,并且已經混淆測試通過,如果你在項目的使用中混淆之后出現問題,請及時通知我。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76045.html

相關文章

  • Android智能下拉刷新框架-SmartRefreshLayout

    摘要:框架下拉刷新控件還能框架化智能又怎么回事二話不多少先上效果圖,咱們再來探個究竟。下面通過自定義和嵌套作為內容來解釋的智能之處??梢钥吹皆诹斜硪呀洕L動到中部時,輕微下拉列表是不會觸發刷新的,但是如果是觸摸固定的布局,則可以觸發下拉。 框架?下拉刷新控件還能框架化?智能又怎么回事?二話不多少先上Demo效果圖,咱們再來探個究竟。 Github 傳送門注意:本文僅僅是博客文章,主要用于項目介...

    MadPecker 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<