原创 Android RecyclerView下拉刷新 & 上拉加載更多

GitHub傳送門 1.寫在前面 本文主要實現的是上拉加載更多功能,下拉刷新使用的是Google官方的SwipeRefreshLayout控件,因爲在實現這個功能的時候走了不少彎路,所以在此記錄下來分享給大家,先看下效果圖: 2

原创 Android 使用代碼實現一個填空題

GitHub傳送門 1.寫在前面 最近項目比較忙,有一個多月沒有更新博客了,利用閒暇之餘總結一下項目中遇到的問題,分享給大家! 剛看到要做填空題這個需求的時候,第一個反應是到百度,啊…不對,谷歌上搜一下有沒有類似的Demo,無奈搜

原创 Android 使用代碼實現一個選詞(拖拽)填空題

GitHub傳送門 1.寫在前面 在上一篇文章《Android 使用代碼實現一個填空題》中,我們學習瞭如何實現一個填空題,今天繼續接着上一篇文章的節奏,學習一下如何實現一個選詞填空題,由於本文中用到了一些上篇文章中的知識點,還沒有

原创 Android畫板 半透明畫筆 筆跡疊加效果

轉載請註明出處:https://blog.csdn.net/kong_gu_you_lan/article/details/105572617 本文出自 容華謝後的博客 0.寫在前面 先看下效果圖,功能雖然簡單,但是實現的時候

原创 Android屬性動畫(一) 初識基本用法

1.介紹 Android系統爲我們提供了三種動畫效果的實現方式: 補間動畫(Tween Animation):只能對View進行動畫操作,支持移動、旋轉、透明、縮放四種效果,有一定的侷限性。 逐幀動畫(Frame Animati

原创 Android Retrofit + RxJava使用詳解

1.Retrofit基本使用 首先來了解下Retrofit是什麼,在官網中對於Retrofit的描述是這樣的: A type-safe HTTP client for Android and Java. 適用於Android和

原创 Java多線程 線程同步與死鎖

1.線程同步 多線程引發的安全問題 一個非常經典的案例,銀行取錢的問題。假如你有一張銀行卡,裏面有5000塊錢,然後你去銀行取款2000塊錢。正在你取錢的時候,取款機正要從你的5000餘額中減去2000的時候,你的老婆正巧也在用銀

原创 Android 仿京東金融首頁頭像效果

1.介紹 看下效果圖,gif錄的有些卡頓,在真機上運行效果很好。 2.實現 很有意思的一個效果,原理其實很簡單,就是通過監聽ScrollView在Y軸的滑動距離,然後在代碼中動態設置頭像的位置和大小。 public class

原创 Android屬性動畫(二) ValueAnimator的實際應用 & 自定義TypeEvaluator

在上一篇文章《Android屬性動畫(一) 初識基本用法》中,我們學習了屬性動畫的基本用法,但是在一些場景中,這些用法還遠不能滿足我們的需求,今天就讓我們來學習一下屬性動畫的高級用法吧! 1.ValueAnimator的實際應用

原创 Android DataBinding & MVVM

先說說兩者的關係,DataBinding是一個實現數據和UI綁定的框架,而MVVM是一種架構模式,實現MVVM模式需要藉助DataBinding來完成。 本文將以《Android 談談我所理解的MVP》中的例子爲基礎,使用MVVM

原创 Android 探討一下Retrofit封裝的最佳姿勢

在上一篇文章《Android Retrofit + RxJava使用詳解》中,我們學習了Retrofit的一些基本用法,但在實際的項目使用中,還是會出現一些問題,今天就讓我們一起來探討一下如何對Retrofit進行封裝吧! 如果你

原创 Android DataBinding使用詳解(一)

DataBinding是一個實現數據和UI綁定的框架,同時也是實現MVVM模式所依賴的工具。 官方文檔 Demo下載地址 1.構建環境 在app根目錄的build.gradle文件中加入DataBinding配置: android

原创 Android 談談我所理解的MVP

嗯,這篇博客應該有個副標題:Retrofit + RxJava + RxLifecycle + MVP 在上一篇文章中,我們對Retrofit進行了封裝,But,這種封裝是不支持MVP模式的,今天就以Retrofit和RxJava

原创 Android Handler機制完全解析

1.爲什麼要引入Handler機制? 舉個栗子:通過網絡獲取數據然後顯示在TextView中,由於網絡通信屬於耗時操作,所以必須在子線程中完成,但是子線程中是不能更新UI的(特殊情況除外),爲了解決以上問題,Android引入了H

原创 Android 使用RxLifecycle解決RxJava內存泄漏

RxLifecycle GitHub地址 RxJava GitHub地址 1.爲什麼會發生內存泄漏 使用RxJava發佈一個訂閱後,當頁面被finish,此時訂閱邏輯還未完成,如果沒有及時取消訂閱,就會導致Activity/Fra