原创 Activity啓動流程( android-26)

Activity啓動流程 本文記錄Activity的啓動流程,總結自Android開發藝術探索(本文采用的是api26,開發藝術探索採用的是21有部分差入。)。 涉及知識包括AMS Binder ActivityStack In

原创 Kotlin學習筆記(五)【繼承】

繼承說明 Kotlin 中所有類都繼承自Any 類,它是所有類的超類,對於沒有超類型聲明的類是默認超類: class Empty // 從Any隱式繼承 Any 默認提供了三個函數: equals() hashCode() t

原创 利用註解實現BindView、OnClick。

此篇博客記錄如何用annotation來實現View的自動綁定,及點擊事件的綁定,不同於ButterKnife,本文采用的是Runtime註解,性能相比ButterKnife較低,ButterKnife採用的是編譯註解,故性能更高

原创 Kotlin定義靜態變量、靜態方法

Kotlin定義靜態變量、靜態方法 kotlin定義靜態變量、方法可以採用伴生對象companion object的方式。 經典例子,實例化Fragment。 java寫法: public class TestFragment

原创 Kotlin學習筆記(三)【循環控制】

for循環 for 循環可以對任何提供迭代器(iterator)的對象進行遍歷,語法如下: fun main(args: Array<String>) { val arrays = intArrayOf(1,2,3,4,

原创 Standard.kt一覽

TODO @kotlin.internal.InlineOnly public inline fun TODO(): Nothing = throw NotImplementedError() /** * Always thr

原创 Kotlin學習筆記(十一)【對象表達式】

Kotlin 對象表達式和對象聲明 Kotlin 用對象表達式和對象聲明來實現創建一個對某個類做了輕微改動的類的對象,且不需要去聲明一個新的子類。 對象表達式 通過對象表達式實現一個匿名內部類的對象用於方法的參數中: btn.se

原创 Kotlin學習筆記(七)【擴展】

Kotlin 可以對一個類的屬性和方法進行擴展,且不需要繼承或使用 Decorator 模式。 擴展是一種靜態行爲,對被擴展的類代碼本身不會造成任何影響。 擴展函數 擴展函數可以在已有類中添加新的方法,不會對原類做修改,擴展函數

原创 Retrofit總結(持續更新)

Get請求 @query @Query會以key=value的方式拼接在url後面 Query非必填,如果請求參數非必填,可以傳null 如:https://api.douban.com/v2/movie/top250?start

原创 重識Handler

關於Handler,最開始的使用就是子線程想要刷新UI,必須用Handler來實現,那爲什麼Handler能夠異步更新UI?Handler的內部機制是什麼樣的?Handler跟Looper,Message,MessageQueue

原创 Kotlin學習筆記(一)【基礎語法】

Hello World! fun main(args: Array<String>) { println("Hello World") } Kotlin的基礎語法 Kotlin文件以.kt爲結尾 包聲明 代碼文件的開頭一般

原创 DNS域名解析配置

本文記錄域名解析的配置,雲主機一臺(阿里雲),域名(百度雲註冊),設置域名解析到雲主機IP 註冊雲主機 註冊雲主機(阿里雲註冊)成功如圖: 註冊域名 註冊域名成功(本文是從百度雲註冊) 域名解析 點擊域名解析之後

原创 Kotlin學習筆記(四)【類和對象】

類定義 Kotlin 類可以包含:構造函數和初始化代碼塊、函數、屬性、內部類、對象聲明。 Kotlin 中使用關鍵字 class 聲明類,後面緊跟類名: class Person { // Person是類名 // 大括

原创 Kotlin學習筆記(六)【接口】

Kotlin接口 Kotlin接口與java8類似,以interface爲關鍵字,允許方法有默認實現: interface Person { fun speak() //接口的方法默認是open fun bre

原创 Kotlin學習筆記(十)【枚舉】

Kotlin枚舉類 枚舉類最基本的方法就是實現一個類型安全的枚舉。 枚舉常量用逗號分隔,每一個枚舉都是一個對象。 enum class Color { RED, BLACK, WHITE } 枚舉初始化