原创 事件分發學習總結
dispatchTouchEvent return true:表示該View內部消化掉了所有事件 return false:表示事件在本層不再繼續進行分發,並交由上層控件的onTouchEvent方法進行消費 return super.d
原创 APK體積極限壓縮優化瘦身
查看APK結構Build->Analyse Apk 未做處理的APK.jpg 開啓代碼混淆 混淆模板 release { minifyEnabled true shrinkRes
原创 導入Ffmpeg到項目
目錄結構 其中有兩個文件非常重要,分別是 native-lib.cpp 、 CMakeLists.txt。 native-lib.cpp :是一個 C++ 接口文件,在 MainActivity 中聲明的外部方法將在這裏得到
原创 編譯最新版FFmpeg
FFmpeg 編譯步驟: 配置環境(NDK,FFmpeg安裝包) 配置FFmpeg的shell腳本 執行腳本生成so庫 本文使用的是目前最新的版本 ffmpeg-4.2.3。 修改 configure 腳本,新增 cross_pre
原创 事件分發學習總結2
佈局結構 所有事件返回值都爲:return super.TouchEvent(event) E/ActivityToucEvent: dispatchTouchEvent: 0 E/ParentLayout: dispatch
原创 RecyclerView刷新數據時閃爍
關閉recyclerview動畫 recyclerView.getItemAnimator().setAddDuration(0); recyclerView.getItemAnimator().setChangeDura
原创 Android高版本dialog彈出黑色狀態欄
測試發現8.0系統彈出時會出現黑色的狀態欄很難忍受 添加依賴 implementation 'com.gyf.immersionbar:immersionbar:2.3.3-beta15' dialog中透明狀態欄 Immersion
原创 RecyclerView九宮格分隔線
九宮格分隔線,無左右邊與最下邊線 效果圖 public class GridDividerItemDecoration extends RecyclerView.ItemDecoration { private in
原创 Gradle 完整指南(Android)
�本文謝絕轉載,非要轉載,請註明出處http://www.jianshu.com/p/9df3c3b6067a 前言 爲什麼需要學Gradle? Gradle 是 Android 現在主流的編譯工具,雖然在Gradle 出現之前和之後都
原创 BRVAH官方使用指南(持續更新)
www.recyclerview.org 官方網站:www.recyclerview.org BRVAH是一個強大的RecyclerAdapter框架(什麼是RecyclerView?),它能節約開發者大量的開發時間,集成
原创 Android單元測試 - 如何開始?
回顧: 《談談爲什麼寫單元測試》 基本單元測試框架 Java單元測試框架:Junit、Mockito、Powermockito等;Android:Robolectric、AndroidJUnitRunner、Espre
原创 白底黑字!Android淺色狀態欄黑色字體模式
之前公司項目UI改版的時候,把大部分標題欄都設計成了白色,給我們的設計圖是這個樣子的: 設計圖.png 這狀態欄佈局和圖標挺像Android,但是這白底黑字Android設計規範裏可沒有啊,於是我們開發的時候果斷忽視這個狀態
原创 線程同步synchronized
monitor 同一monitor阻塞,不同monitor互斥 synchronized(鎖) Java中每一個對象都可以作爲鎖,這是synchronized實現同步的基礎: 普通同步方法(實例方法),鎖是當前實例對象 ,進入同步代碼前要
原创 爲什麼ConstraintLayout代替其他佈局?
歡迎Follow我的GitHub, 關注我的簡書. 其餘參考Android目錄. Constraint Layout 本文的合集已經編著成書,高級Android開發強化實戰,歡迎各位讀友的建議和指導。在京東即可購買:ht
原创 View動畫學習總結
佈局動畫 android:animateLayoutChanges="true" 在4.1 JellyBean上還有一個增強的功能,可以在容器內的子view的layout發生變化時也播放動畫,用法如下。 LayoutTransition