原创 EventBus源碼追蹤

有過Android開發經驗的人相信對EventBus應該都有所瞭解,EventBus是一個開源庫,它使用觀察者模式對模塊間的通信進行解藕。 下面是一個Android中使用EventBus的實例,相信大家都不陌生: class MainA

原创 你真的懂Android Handler嗎?(三)

在你真的懂Android Handler嗎?(一)和你真的懂Android Handler嗎?(二)這兩篇文章中我們瞭解了Handler是如何跟線程綁定的,也知道了Handler中消息傳遞的機制是通過無限for循環。但是我們還遺留了一些問

原创 你真的懂Android Handler嗎?(二)

你真的懂Android的Handler機制嗎?在回答這個問題之前先問自己幾個問題: 1、Handler是如何跟線程綁定的? 2、Handler中的消息是怎麼傳遞的?是通過回調還是通過循環? 3、如果是通過循環傳遞的,那麼爲什麼消息隊列爲空

原创 你真的懂Android Handler嗎?(一)

你真的懂Android的Handler機制嗎?在回答這個問題之前先問自己幾個問題: 1、Handler是如何跟線程綁定的? 2、Handler中的消息是怎麼傳遞的?是通過回調還是通過循環? 3、如果是通過循環傳遞的,那麼爲什麼沒有引起AN

原创 每天一題:快速排序

private void quickSort(int[] nums, int start, int end) { if (nums == null || nums.length <= 1

原创 劍指Offer5——二維數組中查找

在一個二維數組中,每一行都按照從左至右遞增的順序排序,每一列都按照從上至下遞增的順序排序。請寫一個函數,輸入這樣一個數組和一個整數,判斷整數是否存在於這個數組中。 題目分析:假設有數組爲{{1, 3,  5,  7,  9},      

原创 算法-找出數組中重複的數字

本文來自於劍指Offer,是個人對劍指Offer的學習記錄。 題目:在一個長度爲n的數組裏,所有的數字元素都在0到n-1的範圍內,數組中有些數字是重複的,但是不知道有幾個數字重複了,也不知道重複了幾次。請找出數組中任意一個重複的數字。例如

原创 崩潰記錄:android.os.DeadSystemException

記錄一個系統崩潰,如下圖所示,這個崩潰全部出現在三星手機,而且操作系統版本爲10,而且都是退到後臺之後報的,我猜想應該是應用崩潰導致進程被殺了,然後再進行後續操作是出錯了。 具體原因還沒找到。 點贊 收藏 分享

原创 Gson使用指南

官方指南:https://github.com/google/gson/blob/master/UserGuide.md本文主要是官方指南的簡化版翻譯,並加入了自己的測試用例,如果有能力最好還是參考官方指南。一 Gson是什麼?Gson是

原创 在git上push代碼時缺少Change-Id

今天在git上Push代碼時遇到一個問題: missing Change-Id in commit message footer,如下圖: 解決辦法就在圖中:就是直接把上面劃橫線部分複製到下面,然後用git commit --amend

原创 EditText單行顯示

結論: 要控制EditText單行顯示需要同時設置android:singleLine="true"和android:maxLines="1"; 問題源: 今天遇到一個bug,應用中使用了EditText並設置了android:maxLi

原创 打開項目時Gradle:Resolve dependencies ':modules:XXXX'卡住

遇到一個問題——在有網情況下AndroidStudio打開項目時會在Gradle:Resolve dependencies ':modules:XXXX'這個地方卡住,在斷網情況下編譯正常,原因是我升級Gradle導致的,我在網上查到一種

原创 Mac上安裝Android Studio2.2.2

1、到官網上下載安裝包(直接在百度上搜索AndroidStudio,進入其官網,不需要翻牆):http://www.android-studio.org/index.php/download     2、雙擊安裝 只要把Android

原创 Android Studio倒入工程錯誤記錄

1、gradle版本太低,如果倒入的工程依賴的版本較高,AndroidStudio就會自動下載並升級Gradle,由於AndroidStudio下載很慢,所以最好自己手動下載,具體步驟見 http://blog.csdn.net/zhan

原创 一張圖看懂Touch事件的傳遞

1、初識Touch事件  完整的點擊事件是由一個ACTION_DOWN,若干個ACTION_MOVE(可能是0個)和一個ACTION_UP組成的。每一個完整的點擊事件都是有ACTION_DOWN開始的。 2、Touch事件在View中