原创 快速完成代碼插入神器Exynap

前言        Exynap是一個幫助你快速查找和完成代碼插入的Android Studio插件。你只需輸入一個命令按回車就能調出一段代碼,而這個命令也不需要你去記,只需輸入大致意思就可以了,Exynap提供了上千種智能代碼解決方案。

原创 Android打造專屬自定義SlidingMenu

/**        在衆多的App中都用到了SlidingMenu,使用SlidingMenu不僅可以增加顯示的內容,也讓用戶體驗更多的舒適,當然現在github上有相應的SlidingMenu的庫在其它的博客也有很多的關於Slidin

原创 Android新特性-ToolBar小結

要引入Toolbar需要將ActionBar進行隱藏,你可以繼承主題NoActionBar,也可以通過設置: <item name="windowActionBar">false</item> <item name="w

原创 源碼分析Android啓動流程

前言         Android 是Google開發的基於Linux平臺的開源手機操作系統。它包括操作系統、用戶界面和應用程序,android的系統架構和其操作系統一樣,採用了分層的架構。從架構圖看,android分爲四個層,從高層到

原创 刷新控件SwipeRefreshLayout&bug解決

前言:        下拉刷新在衆多的App中可謂是屢見不鮮,在Version19.1之後Google將SwipeRefreshLayout添加到了support-v4包裏面,是刷新控件,它只允許一個直接子類,操作上比較簡單但也不免有一些

原创 UnSafe學習筆記

前言 鎖會導致線程上下文切換和重新調度開銷 volatile只能保證共享變量的可見性,不能解決讀-改-寫等的原子性問題 CAS(Compare and Swap)是JDK提供的非阻塞原子性操作,通過硬件保證了比較-更新操作的原子

原创 Android DataBinding完全解析

前言        2015年的Google IO大會上,Android 團隊發佈了一個數據綁定框架(Data Binding Library),官方原生支持 MVVM 模型。以後可以直接在 layout 佈局 xml 文件中綁定數據了

原创 Android開發之小工具

/** * 得到屏幕的寬度 */ public void getScreenWidth(){ DisplayMetrics displayMetrics = new DisplayMetri

原创 藝術控件RecyclerView的交互動畫&bug解決

前言         RecyclerView是Google在support-v7裏面添加的控件,是5.0 Material Design模式下的一員,在衆多的App中使用非常頻繁,之前是ListView現在是RecyclerView,想

原创 藝術控件RecyclerView的分隔線&bug解決

前言         RecyclerView是Google在support-v7裏面添加的控件,是5.0 Material Design模式下的一員,在衆多的App中使用非常頻繁,之前是ListView現在是RecyclerView,想

原创 RecycleView的多視圖Epoxy庫

前言:        Epoxy是一個用於在RecyclerView中構建複雜屏幕的Android庫。它抽象視圖持有者,項目類型,項目ID,跨度計數等的樣板文件,以便簡化具有多種視圖類型的屏幕。此外,Epoxy還支持保存視圖狀態和項目更改

原创 Android Studio問題彙總

前言           隨着Android5.0的發佈,Android開發已經進入了一個全新的時代,Eclipse開發安卓已經有點不合時宜了,在github上80%的Android項目都採用了AndroidStudio開發,而且Andr

原创 StrictMode總結

Android 2.3提供一個稱爲嚴苛模式(StrictMode)的調試特性,Google稱該特性已經使數百個Android上的Google應用程序受益。 首先先整體介紹: StrictMode.setThreadPolicy(new

原创 Android3D畫廊總結整理

/**  * 在網上看到好多的3D畫廊的效果,最常見就是Gallery,但是在API16的時候就已經廢棄了,現在推薦使用ViewPager和HorizontalScrollView來實現這種效果,下面就在這裏對其進行整理一下,代碼更多的是

原创 源碼分析Looper、Handler、Message之間的關係

/**                Handler、Looper、Message三者之間的關係,無外乎就是開始Looper會開始無限的循環,目的是在消息隊列中進行獲取Message,有則取無在等;而Handler則是在發送Message