原创 measure layout draw

框架分析 在之前的下拉刷新中,小結過觸屏消息先到WindowManagerService(Wms)然後順次傳遞給ViewRoot(派生自Handler),經decor view到Activity再傳遞給指定的View,這次整理View

原创 跨進程調用Activity

【跨進程調用activity】 跨進程調用Activity的目的比較簡單,就是Application A中,有個Activity,想要給其它Application B調用,這時候就要分兩步進行: (1) 在Application A

原创 事件分發

1、View的事件分發 比如說你當前有一個非常簡單的項目,只有一個Activity,並且Activity中只有一個按鈕。你可能已經知道,如果想要給這個按鈕註冊一個點擊事件,只需要調用: [java] view plainco

原创 Service

1、Service的種類    按運行地點分類: 類別 區別  優點 缺點   應用 本地服務(Local) 該服務依附在主進程上,  服務依附在主進程上而不是獨立的進程,這樣在一定程度上節約了資源,另

原创 Proguardgui

1、拷貝Android項目中“proguard.cfg”文件到你指定的位置,並改名爲“proguard.pro”,此步是爲proguardgui應用做前期的配置。 2、在android開發sdk相應的目錄下找到proguard

原创 UML

 在UML類圖中,常見的有以下幾種關係: 泛化(Generalization),  實現(Realization),關聯(Association),聚合(Aggregation),組合(Composition),依賴(Dependenc

原创 Activity切換動畫

  在Activity的Theme中android:windowAnimationStyle字段定義跳轉動畫。   指向的Style通常由4個item組成:   android:activityOpenEnterAnimatio

原创 經典算法

分治算法 一、基本概念    在計算機科學中,分治法是一種很重要的算法。字面上的解釋是“分而治之”,就是把一個複雜的問題分成兩個或更多的相同或相似的子問題,再把子問題分成更小的子問題……直到最後子問題可以簡單的直接求解,原問題的解即

原创 Java引用傳遞&值傳遞

當一個對象被當作參數傳遞到一個方法後,此方法可改變這個對象的屬性,並可返回變化後的結果,那麼這裏到底是值傳遞還是引用傳遞?     答:是值傳遞。Java 編程語言只有值傳遞參數。當一個對象實例作爲一個參數被傳遞到方法中時,參數的值就是

原创 Gson

使用ava關鍵字transient   Java代碼   private transient int value = 3;   在序列化的時候value不會生成到json字符串中。   使用Gson提供的註解@Expos

原创 常用ADB命令

1、列出當前連接的所有設備 adb devices 2、安裝apk adb -s emulator-5556 install helloWorld.apk 如果有多個設備時,用-s 設備序號 來指定設備 adb insta

原创 三次握手 四次揮手

TCP/IP 狀態機,如下圖所示:       在TCP/IP協議中,TCP協議提供可靠的連接服務,採用三次握手建立一個連接,如圖1所示。 (SYN包表示標誌位syn=1,ACK包表示標誌位ack=1,SYN+ACK包表示標誌位sy

原创 靜態變量初始化

我們大家都知道,對於靜態變量、靜態初始化塊、變量、初始化塊、構造器,它們的初始化順序以此是(靜態變量、靜態初始化塊(順序按聲明順序))>(變量、初始化塊)>構造器。我們也可以通過下面的測試代碼來驗證這一點: Java代碼 public c

原创 屏幕旋轉

個人學習筆記: 很多時候會用到屏幕旋轉時需要對一些數據進行保存,例如當橫豎屏區切換時要保存先前屏幕的一些數據和狀態,個人認爲有兩個方法提供使用: 1.當前的Activity不銷燬: 那麼就需要在AndroidManifest.xm

原创 onSaveInstanceState和onRestoreInstanceState

當某個activity變得“容易”被系統銷燬時,該activity的onSaveInstanceState就會被執行,除非該activity是被用戶主動銷燬的,例如當用戶按BACK鍵的時候。  注意上面的雙引號,何爲“容易”?言下之意就是