原创 Android5.X (六) : RecycleView

RecycleView:它是谷歌替代ListView的控件,它擁有ListView的item的回收複用功能,但是RecycleView可以把ViewHolder的實現封裝起來,我們只要實現自己的ViewHolder就可以了。 跟

原创 自定義控件(四)-下拉刷新與上拉加載

上一節,其實有個坑~不知道大家有木有發現哈,沒有好好理解的童鞋可能沒有發現。那就是BannerAdapter中的getCount方法,我返回的是100,但是明顯100是不可以滴。到100之後,他就不能再進行輪播了!所以需要把100

原创 自定義控件(六)- 百分比圓形

在自定義控件(2)裏面我們做了一個百變的圓形,那我們就以那個爲基礎,在外邊在加一層能根據百分比進行滾動的圓。 1。要在現有的圓外面添加一層滾動的圓弧,那首先我們先給他設置一個方法,讓我們知道應該滾動多少 //設置目標的百

原创 線程管理(一)AsyncTask與Thread的差別

AsycTask,做Android的應該都是熟悉的不能再熟悉了,當我們在進行耗時操作的時候,就可以使用這個了 但是有的人就在想,Thread不是也可以開一個子線程進行耗時操作嗎?那這兩個有什麼樣的區別呢? 那麼一起來看下Asy

原创 自定義控件(三)

有的童鞋可能看了前兩節之後,覺得本博客逼格不夠高,說的太簡單了。那我們就來點乾貨吧!那麼來點經常用到的複合控件:圖片輪播~ 圖片輪播,大部分的App裏面有這個功能,主要用來播放廣告等~ 那我們來簡單的分析一下思路:怎麼寫這玩意? 1.首先

原创 Android 常見內存泄漏的解決方案

在Android程序開發中,當一個對象已經不需要再使用了,本該被回收時,而另外一個正在使用的對象持有它的引用從而導致它不能被回收,這就導致本該被回收的對象不能被回收而停留在堆內存中,內存泄漏就產生了。 內存泄漏有什麼影響呢?它是造

原创 Service與IntentService

Service:服務,四大組件之一,重要性不言而喻。 一:它有兩種註冊方法: 1.通過startServcie開啓服務,並不與Service進行綁定 2.通過bindService綁定服務,如果服務沒有開啓,則自動開啓。bin

原创 線程管理(二)創建線程池管理線程

爲什麼要用線程池管理線程?那是因爲不停的創建線程是非常耗費資源的的一種方法,所以就需要對它進行管理 public class ThreadManager { private ThreadManager() { }

原创 設計模式-觀察者設計模式

觀察者模式,是一個比較有用的一個設計模式:通俗的講就是一個被觀察者,多個觀察者,被觀察者發生了變化,會通知觀察者,觀察者做出各自的事情。 舉個例子: 司馬光砸缸的典故我想大家都知道。一個小朋友(被觀察者)從水缸的外面掉進了水裏,

原创 數據持久化方案(二)SharedPerference

在此提供下OrmLite官網的demo地址,有興趣的同學可以去下載: http://blog.csdn.net/oo8_8oo/article/details/7302156 SharedPerference這個東西很是好用,可

原创 Anroid 數據持久化方案

Android有幾種數據的保存方案,讓我們可以儘量的減少對網絡的消耗,優化用戶體驗。讓我來給大家介紹一下吧: 1.數據庫: Android的數據庫使用的是SQLlite,這是一個輕量級關係型數據庫。大家既可以繼承SqliteOpenHel

原创 自定義控件(五)-自定義Title

雖然說google自己有actionbar,還有toolbar。但是絕大部分的時候我們還是需要自定義統一樣式的TitleBar。那麼讓我們一起來探索怎麼定義一個萬能的TitleBar吧! (1)我們先把TitleBar 分爲三個部

原创 Android Studio 中常用的插件

在哪裏下載插件? 點擊File-Setting-Plugins,在搜索框中搜索想要的插件名 所有的插件都是爲了方便大家操作而已,所以在用插件之前下載源文件,比如:Genymotion就必須先從官網下載並安裝, ButterKnife,

原创 數據持久化方案(三)ContentProvider

數據庫在Android當中是私有的,不能將數據庫設爲WORLD_READABLE,每個數據庫都只能創建它的包訪問。這意味着只有創建這個數據庫的應用程序纔可訪問它。也就是說不能跨越進程和包的邊界,直接訪問別的應用程序的數據庫。那麼如

原创 數據持久化方案(四)文件保存

文件保存,也算是比較常見的,也比較方便的保存方式。 在Android中,我們可以通過文件保存json數據來實現本地緩存 public class FileUtil { public static final String