原创 SpringAnimation使用示例

前言 SpringAnimation是由com.android.support:support-dynamic-animation支持包提供的彈性動畫方案。SpringAnimation是由Springforce驅動的動畫。彈簧力定義

原创 Android 自定義水平progressBar顏色

前言 2019年第一天開工,有一個自定義水平進度條顏色的需求。在此做一個記錄。2019加油。 自定義layer-list drawable目錄右鍵新建 xol_revision_layer_progress.xml文件 <?xml v

原创 Android Sqlite總結

前言 今天是2018年臘月27,公司的人少了許多。前幾天看到項目裏,用到了sqlite數據庫,自己結合幾篇博客做個總結。希望對自己有所幫助。 sqlite 中sql語句的使用 SQLite最大的特點是你可以把各種類型的數據保存到任何字

原创 FragmentPagerAdapter Fragment的生命週期

前言 最近換了新工作,一直寫業務,寫的過程中碰到了viewPager結合Fragment的使用的場景,但是發現自己對此時Fragment的生命週期理解並不到位,在此做一下記錄。 代碼和佈局文件 ActivityForViewPager

原创 Fragment 懶加載

前言 最近工作的時候,用到ViewPager 結合Fragment做了一個類似網易新聞的數據展示界面,想做到只有在Fragment可見的時候,才做一次數據加載,故再次封裝了一個LazyFragment類,在此做個記錄。 package

原创 Android Bander設計與實現

原文出處 關鍵詞 Binder Android IPC Linux 內核 驅動 摘要 Binder是Android系統進程間通信(IPC)方式之一。Linux已經擁有管道,system V IPC,socket等IPC手段,卻還要

原创 HashMap(jdk1.8)源碼分析

概述 散列表(Hash table,也叫哈希表),是根據關鍵碼值(Key value)而直接進行訪問的數據結構。也就是說,它通過把關鍵碼值映射到表中一個位置來訪問記錄,以加快查找的速度。這個映射函數叫做散列函數,存放記錄的數組叫做散列表。

原创 LinkedList(jdk1.8)源碼分析

概述 LinkedList實現了List接口,在之前使用ArrayList的地方可以替換成LinkedList直接使用。與ArrayList相比,LinkedList(沒有實現RandomAccess接口)底層使用鏈表實現數據的存儲,鏈表

原创 Comparable和Comparator的使用

概述: 在對一個類進行排序的時候,如果用jdk自帶排序工具類排序,則需要讓該類實現comparbale接口,或這在外部實現一個Comparator接口,進行排序。對於這兩種排序方式的使用,以及他們之間的區別,在此做一個簡單的介紹。 Com

原创 Android Studio使用自定義的Android.mk文件編譯ffmpegyuv-bgr

概述 最近做項目的時候,領導安排一個任務,讓測試一下,用ffmpeg中的yuv轉bgr函數的速度。之前編譯so庫大部分都是用eclipse,本次博主花了兩天時間,在Android studio上編譯並運行,在此做一下記錄。 設置Andro

原创 生日計算年齡

引子 對於一個,極端追求完美的程序員,寫代碼,有時候是很痛苦的。這種痛苦不是怎麼實現一個需求,而是痛苦於選擇,選擇用那種方法實現,才能做到完美。 ——今天,天氣悶熱,要下大雨的樣子,股票行情持續走低,大盤接近2700點。 問題描述 最近

原创 VS中的路徑宏如 $(OutDir) 等含義

說明: $(IntDir) 爲中間文件指定的相對於項目目錄的目錄路徑。它解析爲“中間目錄”屬性的值。 $(OutDir) 輸出文件目錄的路徑,相對於項目目錄。這解析爲“輸出目錄”屬性的值。 $(DevEnvDir) Visual Stud

原创 Android Studio 快速生成jni頭文件

概述 在上一篇博客中講述了,javah命令的簡單用法,及通過javah命令生成,jni頭文件的用法實例。該篇博客將講述一下,在Android studio快速生成頭文件幾種常用方法。 Terminal命令生成jni頭文件 terminal

原创 ArrayList (jdk1.8)源碼分析

概述 一首古詩句說的好,書中自有黃金屋。作爲一個有追求的程序員,若想寫好代碼,則必須閱讀好的源代碼,並總結吸收其精髓。第一次寫源碼分析的文章,大家多多包涵。 ArrayList 類的繼承關係圖 說明: ArrayList 實現了It

原创 javah命令詳解

概述: 最近在寫c++/c的一個小的項目,需要打成動態庫,供java使用。就對java 調用c++/c代碼做了簡答瞭解,在此做記錄。jni開發第一步,就是用javah命令生成生成c\c++頭文件。 javah命令參數詳解 cmd(默認配置