原创 SharedPreferences存取特殊數據

說到SharePrefrence,簡稱sp,大家一點不陌生,經常會用它存儲一些簡單數據,那麼簡單數據是什麼?這裏總結下 SharePrefrence中有個抽象類叫Editor,包含以下方法:     存儲普通數據:     putBool

原创 android中子線程可以更新UI,是真的嗎?

看到這個問題,相信很多小夥伴認爲,android開啓子線程更新UI,是不對的,爲什麼呢? 因爲只有主線程(UI線程)纔可以進行UI的修改,如果在子線程進行UI更新,會拋出異常:     android.view.ViewRootImpl$

原创 關於android studio導入github項目build失敗

在使用as時,經常需要導入github上項目 1.從github獲取項目到本地磁盤,有兩種方式,     一種是直接downLoad,     另一種是as的菜單項,VCS -> Checkout from VersionControl

原创 Android開發之獲取狀態欄-BarUtils

在開發中,經常會需要會各種欄的設置。比如,獲取狀態欄高度,對狀態欄進行隱藏等,爲此,對於這些操作整理了下 目錄 狀態欄 獲取狀態欄高度 設置狀態欄是否可見 設置狀態欄模式 將view的topMargin加上狀態欄高度 將

原创 你真的瞭解SharedPreferences的Editor嗎

你真的瞭解SharedPreferences的Editor嗎?很多人覺得,再熟悉不過了,經常使用它進行數據的存儲。現在,有你可能不知道的,commit()方法,apply()方法,PS:知道的童鞋,自行繞道哈,不瞭解的可以繼續看下去 co

原创 Android開發之安全徹底的修改包名

昨天,因爲項目需要對包名進行修改,經過一番折騰,項目正常使用,爲此,對修改包名涉及的東西進行總結。 1.修改,AndroidManifest.xml文件 搜索並找到”package”屬性,進行修改 package="com.pro

原创 android studio中的文本替換

使用as開發時,經常涉及在java或者xml文件中替換一些字符串,變量名,資源名等情況,挨個替換簡直崩潰,所以這裏介紹下     第一種:同一文件內,替換使用 Ctrl + F     第二種:不同文件(全局),替換使用 Ctrl + S

原创 setContentView到底做了什麼

對Activity的setContentView的使用,大家比較熟悉了,當然,對setContentView的原理估計也比較熟悉,網上有不少的文章,不過,還是寫一篇這方面的東西,記錄下,畢竟 很多東西,看別人的是一回事兒,自己寫又是一回事

原创 Application中ActivityLifecycleCallbacks的原理分析

ActivityLifecycleCallbacks是Application中的一個接口,既然是在Application中,不得不說說Application類,別急,一個個來說道說道 ActivityLifecycleCallbacks接

原创 Handler、Looper、Message、MessageQune之間的原理

說到sendMessage,開發中用的比較多,是Handler的方法,而Handler的機制,在整個Android系統中的應用非常廣泛,當然,也是面試中經常問到的知識點,過一過源碼,在此梳理下, 首先,一般使用Handler代碼是這樣的,

原创 LayoutInflater是如何“移花接木”-下篇

LayoutInflater“移花接木”的上篇,介紹了LayoutInflater對象的獲取方式,更主要的是分析幾種方式的原理,發現最終都是通過獲取系統服務的方式。那麼,本篇算是“移花接木”的重頭,主要分析xml是如何轉換爲view的 獲

原创 android的MVC、MVP、MVVM比較

MVC 應用大致爲三部分:     視圖(View):用戶界面,用戶操作輸入     控制器(Controller):業務邏輯,不同的數據服務    模型(Model):數據保存,也就是不同的數據實體 各部分之間的通信方式:     Vi

原创 java中的抽象與接口比較

這裏從以下幾個方面比較: 1.構造方法     抽象類可以有構造方法     接口沒有構造方法 2.訪問修飾符     抽象類中的方法可以用public、protected和default這些修飾符修飾     接口中的方法默認修飾符爲

原创 java中多態

1.什麼是多態     同一操作,作用於不同的對象,可以有不同的解釋,產生不同的執行結果,就叫做多態 2.多態分類     編譯時多態、運行時多態     編譯時多態:也叫設計時多態,這種多態實際上就是方法重載     運行時多態:代碼在

原创 Activity界面內容不顯示,你遇到了嗎?

編寫Activity時遇到的一個問題,在此記錄,也分享下,Activity寫好運行後,genimotion開啓應用,卻發現界面不顯示內容,後來發現標題欄label也不顯示。於是開始排查問題原因,在確認setContentView調用,佈局