Android學習筆記

2021-07-11 18:36:18 字數 2528 閱讀 5707

1.獲得全域性context

public

class

extends

private

static context mcontext;

private

@override

public

void

oncreate()

/***

* 獲取context物件

*@return

*/public

static context getcontext()

/****

*@return

*/public

}}

activity基類

public

class

baseactivity

extends

public context mcontext;

public

baseactivity()

}

使用

public

class

mainactivity

extends

baseactivity

public

void

click(view view)

}}

2.系統啟動流程

載入linux核心—啟動init程序—fork出zygote程序—fork出systemserver程序

在zygote開啟的時候,會呼叫zygoteinit.main()進行初始化

public

static

void

main(string argv) else

if (!argv[1].equals(""))

}......

private

static

boolean

startsystemserver()

throws methodandargscaller, runtimeexception catch (illegalargumentexception ex)

......

public

final

class

systemserver

// 載入本地服務

system.loadlibrary("android_servers");

// 初始化系統上下文物件

createsystemcontext();

}//建立systemservicemanager,後面的其他服務都要通過他來啟動

msystemservicemanager = new systemservicemanager(msystemcontext);

localservices.addservice(systemservicemanager.class, msystemservicemanager);

private void createsystemcontext()
public

static activitythread systemmain() else

activitythread thread = new activitythread();

thread.attach(true);

return thread;

}

我們看看attach方法裡面

private

void

attach(boolean system)

接下來我們繼續看systemservice裡面,會通過systemservermanager啟動其他服務。

//開啟核心服務

private void startbootstrapservices()

4.fitssystemwindows屬性的使用

這個乙個boolean值的內部屬性,讓view可以根據系統視窗(如status bar)來調整自己的布局,如果值為true,就會調整view的paingding屬性來給system windows留出空間….

實際效果:

當status bar為透明或半透明時(4.4以上),系統會設定view的paddingtop值為乙個適合的值(status bar的高度)讓view的內容不被上拉到狀態列,當在不佔據status bar的情況下(4.4以下)會設定paddingtop值為0(因為沒有佔據status bar所以不用留出空間)。
在baseactivity裡面判斷

if (build.version

.sdk_int >= build.version_codes.kitkat)

Android學習筆記

android系列 第一期 第一課 android初步認識 今天我們來初步了解一下安卓吧。首先,說到android,大家都非常熟悉了,相信都用過android手機吧,android給我們的第一印象應該是它的logo 乙個小機械人,如下圖1所示。圖1 android logo 嗯,好,認識了andro...

Android學習筆記

1 android四大天王 1 activity 介面元件,使用者介面,整個應用程式的門面 2 intent 用於應用之間傳輸資料 3 service 承擔資料處理的工作 4 content provider 為應用提供資料 android檔案目錄 1 assets 2 res drawable 放...

android學習筆記

我是自學android的到現在也有一段時間了,大概三個月。我不是大牛,沒有很牛掰的技術,寫此部落格純粹是為了把我的錯誤記錄下來,印象深刻點,保證下次不會再犯,或許對別人也能有點用吧!以下是今天做的零零散散的筆記 adapter set nullpointerexception 在給某個元件設定值的時...