原创 各種排序算法練習

這是我準備數據結構排序算法考試準備的練習代碼,收穫不少。 import java.util.Collections; import java.util.LinkedList; import java.util.List; publi

原创 拓撲排序之任務管理系統思路設計

問題概述: A task (e.g., A B C …) can be completed during a level only if it has no dependencies or all its dependencies hav

原创 RoundedImageView源碼解析(一) 簡介

選擇哪一個RoundedImageView類庫 我們可以在網上找到很多關於顯示圓角的ImageView開源控件,那麼我選擇的是哪一款呢? 答案是https://github.com/vinc3m1/RoundedImageView。 運行

原创 Android如何通過gradientui類庫實現漸變切換icon效果

在Android開發裏面經常會遇到漸變切換的效果,比如顏色漸變切換效果,移動動畫效果。 這些都可以用屬性動畫來做。 但是屬性動畫也有自己的侷限性,屬性動畫只能在控件的get和set方法可以對控件進行操作的時候才能生效,不是所有的效果都可

原创 ImageLoader內存緩存解析

接下來我要說的就是鼎鼎大名的Universal Image Loader,上一篇講了ImageLoader硬盤緩存解析,本篇將介紹ImageLoader的內存緩存。 先來看看ImageLoader內存緩存部分的代碼結構。 首先是Me

原创 AndroidStudio怎麼將開源項目發佈到jcenter

AndroidStudio是從哪裏下載類庫的? 我們在用AndroidStudio寫Android程序的時候經常會看到在build.gradle文件裏面添加引用的類庫,只需要一行代碼。 例如: dependencies { co

原创 Android BLE開發之BluetoothGatt status 133

最近在做Android BLE開發,第一次接觸藍牙開發可以說遇到好多問題,好在都一一挺過來了! android的藍牙開發遇到最常見的問題就是發現連接藍牙設備連接不上,仔細一看竟然是 BluetoothGatt status 133,在A

原创 高仿微信6.0Tab bar

微信6.0版本的底部Tab Bar,切換圖標變色的效果還不錯,之前看過鴻洋大神的Android高仿微信6.0主界面,很是佩服。 不過我發現,真正微信6.0的切換圖標變色的效果應該還不是鴻洋大神的那種方法,我們先看一下我做的效果圖。 在這

原创 ImageLoader硬盤緩存解析

概述 我要說的就是鼎鼎大名的Universal Image Loader,UIL是非常強大的一款圖片加載框架,它不僅支持本地圖片加載也支持網絡圖片加載還支持Android自身的drawable文件夾,asset文件夾裏面的圖片文件加載,

原创 AndroidStudio library module的R文件報錯

最近在寫一個Android的library module,打算在庫項目裏面寫一個自定義控件。 自定義控件裏面有自己特有的屬性。在attr.xml裏面生成自己的自定義屬性。 代碼如下: <?xml version="1.0" encodin

原创 Android onTouchEvent的MotionEvent.ACTION_UP不響應

自己寫了一個自定義View,裏面要監聽ouTouchEvent事件,於是我重寫了View的onTouchEvent方法。 代碼如下: @Override public boolean onTouchEvent(MotionEven

原创 RoundedImageView源碼解析(三)RoundedImageView解析

現在開始RoundedImageView的源碼解析了,之前的RoundedDrawable就是爲RoundedImageView的實現做鋪墊。 RoundedDrawable的作用主要是把Drawable轉化爲圓角的Drawable. 如

原创 Android Studio設置logcat顏色

在Android Studio裏面默認的logcat顯示顏色是灰色的,不同等級的log是沒有顏色分別的,如圖 這一點遠不如Eclipse好看,但是Android Studio的logcat的顏色其實也是可以設置的 進入Settings界

原创 Git讓gitignore生效

轉自http://blog.csdn.net/wangfei584521/article/details/23657633 改動過.gitignore文件之後,在repo的根目錄下運行: git rm -r --cached . g

原创 TextureView硬件加速lockCanvas

最近在做Android視頻通話部分的需求,有一個需求是在視屏界面上顯示紅色的方框, 經過一段時間的糾結我發現Android4.0以上有一個控件TextureView,做視頻界面的話剛好合適, 它既可以想SurfaceView那樣渲染視頻