原创 onWindowFocusChanged重要作用 and Activity生命週期

onWindowFocusChanged重要作用 Activity生命週期中,onStart, onResume, onCreate都不是真正visible的時間點,真正的visible時間點是onWindowFocusChange

原创 Android自定義View構造函數詳解

初始Custom View的構造函數 通常我們在實現Custom View的時候,都會先繼承View並實現View的三個構造函數,例如: import android.content.Context; import android

原创 android RecyclerView獲得單個Item的ViewHolder

我們在使用RecyclerView時,有時候還需要獲取某個Item的viewHolder,具體如下: [java] view plain copy   int firstItemPosition = layoutMa

原创 Android TypedValue.applyDimension()的用法

這個方法的作用是 把Android系統中的非標準度量尺寸轉變爲標準度量尺寸 (Android系統中的標準尺寸是px, 即像素) Android系統中的尺寸單位有:  標準單位: px (px是安卓系統內部使用的單位, dp是與

原创 CoordinatorLayout +RecyclerView+加載不同佈局的item

最近在做一個仿海詞詞典的demo,首頁主要用到了CoordinatorLayout 摺疊標題,並加載下方不同佈局的數據。海詞詞典的的首頁是非常漂亮的,先讓我們看下它的首頁吧。直接上圖片                    

原创 Canvas之translate、scale、rotate、skew方法講解!

前面說Canvas大致可以分爲三類: 1. save、restore 等與層的保存和回滾相關的方法; 2. scale、rotate、clipXXX 等對畫布進行操作的方法; 3. drawXXX 等一系列繪畫相關的方法;

原创 RxJava練習(1)--timer代替Handler

最近項目需要引入RxJava,需要轉換代碼思路。 先在項目中看看哪裏能使用這些api,發現有個handler可以被替換,迅速使用。 原來的代碼是這樣:private Handler mHandler = new Handler() {

原创 仿 QQ 底部 tab 導航

仿 QQ 底部 tab 導航 原文鏈接:http://www.jianshu.com/p/826d730bd841 本篇博客主要實現以下效果: 使用 FragmentTabHost 實現 qq 底部 Tab 切換 使用 Radio

原创 Java BigDecimal詳解

1.引言         借用《Effactive Java》這本書中的話,float和double類型的主要設計目標是爲了科學計算和工程計算。他們執行二進制浮點運算,這是爲了在廣域數值範圍上提供較爲精確的快速近似計算而精心設計的。然而

原创 Android自定義view之圓形進度條

這段時間正在學習自定義View以及屬性動畫的知識,然後剛好用這個來練練手,無圖無真相,直接看圖: 簡單自定義了一個比較通用的圓形進度條,像上圖所示的可以定義圓的半徑,進度顏色,寬度,中間字體等信息。下面我就一步一步來爲大家講

原创 SQLite和MySQL數據庫的區別與應用

簡單來說,SQLITE功能簡約,小型化,追求最大磁盤效率;MYSQL功能全面,綜合化,追求最大併發效率。如果只是單機上用的,數據量不是很大,需要方便移植或者需要頻繁讀/寫磁盤文件的話,就用SQLite比較合適;如果是要滿足多用戶同時訪問,

原创 onBackPressed() 使用

onBackPressed() : 當手機按下back鍵時,執行此方法。   用此方法時 :有super.onBackPressed() 時 不能把在此方法中設置的 intent 傳回上一個Activity ,          

原创 android RecyclerView獲得單個Item的ViewHolder

我們在使用RecyclerView時,有時候還需要獲取某個Item的viewHolder,具體如下:int firstItemPosition = layoutManager.findFirstVisibleItemPosition();