安卓開發考試要點 面試重要知識點(整合)

2021-10-01 18:04:38 字數 3004 閱讀 9387

1.linearlayout線性布局

線性布局在實際開發中很常用,它主要以水平和垂直的方式顯示介面中的控制項。線性布局中有乙個非常重要的屬性orientation用於控制控制項排列的方向,vertical表示垂直顯示,horizonal表示水平顯示。

2.relativelayout相對布局

是通過相對定位的方式指定控制項位置,在設計的時候遵循控制項之間的依賴關係,後放入的控制項的位置依賴於先放入的控制項的位置。

3.framelayout幀布局

為每個加入其中的控制項建立乙個白區域,幀布局大小有內部最大控制項決定

4.absolutelayout絕對布局

通過指定x,y座標的控制每個控制項的位置

5.tablelayout**布局

通過行和列將介面劃分為多個單元,每個單元可以新增控制項

android使用android.util.log類的靜態方法實現輸出程式資訊。logcat輸出日誌內容分為6個級別,分別是verbose(v)顯示全部資訊、debug(d)顯示除錯資訊、info(i)顯示一般資訊、warning(w)顯示警告資訊、error(e)顯示錯誤資訊、assert(a)沒有對應的方法。

1.應用程式層

2.應用程式框架層

3.核心類庫層

4.linux核心層啟動狀態、執行狀態、暫停狀態、停止狀態、銷毀狀態

乙個activity從啟動到關閉會依次執行oncrate() --> onresume() --> onpuse() --> onstop() --> ondestory()方法。

生命週期方法

oncrate():在activity建立的時候呼叫

onstart():在activity即將可見的時候呼叫

onresume()在activity獲取焦點開始和使用者互動的時候呼叫

onpause():在當前activity被其他的activity覆蓋或者鎖屏的時候呼叫

onstop():在activity對使用者不可見的時候呼叫

ondestiry():在activity銷毀的時候呼叫

onrestart():在activity從停止狀態再次恢復啟動的時候呼叫

1.standard模式

每啟動乙個activity就在棧頂建立乙個新的例項

2.singletop模式

判斷要啟動的activity例項是否存在於棧頂,如果位於棧頂就直接復用,否則建立新的例項

3.singletask模式

每次啟動activity時,系統首先檢查棧中是否存在當前的activity例項,如果存在就直接使用,並且把當前的activity之上的所有activity出棧,否則重新建立乙個新的例項。

4.singleinstance模式

回啟東乙個新的activity來管理activity例項

intent意為意圖,是程式中各元件互動的重要方法,不僅可以指定當前元件要進行的動作,還可以在元件之進行資料的傳遞。

intent有顯示意圖和隱式意圖之分

顯示意圖可以通過名稱開啟元件

隱式意圖沒有明確指定要開啟的元件,而是通過指定action。category等舒心資訊,系統根據這些資訊進行分析,然後尋找目標的activity。

1.檔案儲存

一種常用的資料儲存方式,提供openfileinput()和openfileoutput()方法讀取裝置上的檔案

安卓的檔案儲存分為內部儲存和外部儲存,內部儲存將資料以檔案的方式儲存到目錄data/data//files目錄下,外部儲存將檔案儲存到外部的裝置上。

2.sharedpreferces

它使用xml的格式將資料儲存在裝置中。

3.sqlite資料庫

是適合安卓的一種輕量的資料庫

sqlite是一種輕量級的資料庫,它沒有服務程序,通過檔案的形式儲存資料,不需要配置可以直接使用。

4.contentproder

安卓的四大元件之一,主要應用於程式之間的資料交換

5.網路儲存

與android的網路資料打交道,將資料儲存在伺服器上

listview是乙個比較常用的控制項,他以列表的方式展示具體的資料內容,當資料過多的時候會出現滾動條,並且能夠根據資料的長度自適應螢幕顯示。

在進行資料的適配的時候會用到資料介面卡,所謂的介面卡就是資料與檢視之間的橋梁,類似於轉換器將複雜的資料轉換成使用者可以接受的方式展現。

三種常用的資料介面卡:

baseadapter、******adapter、arrayadapter

service(服務)是乙個長期運執行在後台的使用者元件,沒有使用者介面,即使轉換到另乙個程式,服務也可以在後台執行。

服務有兩種啟動方式:

startservices()、bindservices()

服務的通訊方式,一種是本地服務通訊,另一種是遠端服務通訊。本地服務通訊是指應用程式內部的通訊,遠端服務通訊是指兩個應用之間的通訊。

contentprovider其功能是在不同的程式之間實現資料的共享。

1.get方式,以實體的方式得到請求url所指向的資源資訊,他想伺服器提交的資料引數更在url後面,使用get方式訪問網路url一般要少於1kb

2.post方式,使用post方式提交的引數跟在請求實體中,使用者不能在瀏覽器中看到向伺服器提交的請求引數。

1.獲取sharedpreference的物件

2.獲取sharedpreference的編輯器editor

3.通過編輯器的put方法存入資料

4.利用編輯器的conmit()方法提交資料

1.sqlite是一種輕量級的資料庫,mysql/sql server 適用於伺服器資料量大的服務

2.sqlite靈活性好,易於移植,易於安裝

3.sqlite是乙個嵌入式的資料庫引擎,是乙個檔案

安卓知識點三

從字串中獲取指定下表的字元 abc.chartat 0 的結果是a 獲取控制台的輸入資訊 scanner scanner new scanner system.in system.out.println 姓名 string name scanner.next 解析日期格式 datetimeforma...

關於安卓的知識點總結

1 不設定 activity 的android configchanges 時,切屏會重新呼叫各個生命週期,切橫屏時 會執行一次,切豎屏時會執行兩次 2 設定 activity 的android configchanges orientation 時,切屏還是會重新呼叫各個生命周 期,切橫 豎屏時只...

iOS開發面試知識點總結

這一段時間都在忙著面試相關的事情,今天面試的時候才發現有些自己以為很熟悉的點在真的去做筆試題和真的機試時都沒有做好,也許是從一開始就沒有理解清楚,所以現在準備好好的這一段時間遇到的容易在面試出現的問題都整理一下,也是自己成長的乙個過程。1.objective c的記憶體管理方式 oc使用物件的引用計...