亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

Android基礎(chǔ)

asal 2016-11-07 15:05:09 492
abstrak:學(xué)習(xí)Android 有一個(gè)很重要的設(shè)計(jì)思想就是——MVC設(shè)計(jì)模式。應(yīng)用對象按模型、控制器和視圖的類別分為三部分。Android應(yīng)用基于模型——控制器——視圖(Model—View—Controller、MVC)的架構(gòu)模式進(jìn)行設(shè)計(jì)。 MVC設(shè)計(jì)模式表明,應(yīng)用的任何對象,歸根結(jié)底都屬于模型對象、視圖對象、以及控制對象中的一種。模型對象:存儲著應(yīng)用的數(shù)據(jù)和業(yè)務(wù)邏輯。  視圖對象知道如

學(xué)習(xí)Android 有一個(gè)很重要的設(shè)計(jì)思想就是——MVC設(shè)計(jì)模式。

應(yīng)用對象按模型、控制器和視圖的類別分為三部分。Android應(yīng)用基于模型——控制器——視圖(Model—View—Controller、MVC)的架構(gòu)模式進(jìn)行設(shè)計(jì)。 

MVC設(shè)計(jì)模式表明,應(yīng)用的任何對象,歸根結(jié)底都屬于模型對象、視圖對象、以及控制對象中的一種。

模型對象:存儲著應(yīng)用的數(shù)據(jù)和業(yè)務(wù)邏輯。  視圖對象知道如何在屏幕上繪制自己如何響應(yīng)用戶的輸入,如用戶的觸摸等。    控制對象含有應(yīng)用的邏輯單元,是視圖與模型對象的聯(lián)系紐帶。

使用MVC設(shè)計(jì)模式的好處:

把java類以模型、視圖和控制層進(jìn)行分類組織,也有助于我們設(shè)計(jì)和理解應(yīng)用。

額。。最近重新把a(bǔ)ndroid基礎(chǔ)看了一遍。然后買了一本書叫做《Android編程指南》(第二版) .個(gè)人感覺此書還不錯(cuò)。今天寫一下在書中聯(lián)系的一個(gè)簡單的程序。

 我也是因?yàn)榭戳诉@本書之后更改了我自己的一些編譯習(xí)慣。因?yàn)閍ndroid的一個(gè)很中要的一個(gè)編譯思想就是MVC模式,不管是你在給一個(gè)簡單按鈕Button定義它的名字也好,還是給一堆按鈕定義它們的信息也好,都要想到這個(gè)編譯思想。

當(dāng)一個(gè)用戶使用一個(gè)app時(shí),當(dāng)他進(jìn)行點(diǎn)擊一個(gè)按鈕的時(shí)候,你要去響應(yīng)這個(gè)點(diǎn)擊時(shí)間,你要去給這個(gè)控件去寫它的方法,而不是一個(gè)死板的按鈕,是一個(gè)有生命力,有自己的構(gòu)造方法的按鈕。

下面我來畫一個(gè)MVC數(shù)據(jù)控制流與用戶交互的時(shí)候響應(yīng)的數(shù)據(jù)流圖:

23.png

額...  圖雖然畫的有點(diǎn)丑,但是大體的意思就是個(gè)樣子了。

接下來來描述下Activity的生命周期.

每個(gè)Activity都有其生命周期,activity在運(yùn)行、暫停和停止三種可能的狀態(tài)間進(jìn)行轉(zhuǎn)換。

Activity的生命周期、狀態(tài)以及狀態(tài)切換時(shí)系統(tǒng)調(diào)用的方法有如下幾種:

1.onPause()、onStop()、onDestory()、onCreate()、onStart()、onReasume()。

日志跟蹤Activity的生命周期:

Android 的android.util.Log類能夠發(fā)送日志信息到系統(tǒng)級別的共享日志中心。Log類中有好幾個(gè)日志記錄方法:

其中使用最多的是:

public static int d(String tag,String msg):  ddaibiao "debug” ,用來表示日志信息的級別,第一個(gè)參數(shù)是表示日志的來源,第二個(gè)參數(shù)表示日志的具體內(nèi)容。

第一個(gè)參數(shù)通常以類名為值的TAG常量傳入

private static final String TAG="MainActivity";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.d(TAG, "onCreate(Bundle) called");
        setContentView(R.layout.activity_main);
    }

小提示:@Override注解,就是要求編譯器保證當(dāng)前類具有你要覆蓋的方法。

覆蓋onSaveInstanceState(Bundle)方法, 可通過此方法將一些數(shù)據(jù)保存在bundle中,然后在onCreate()方法中取出這些數(shù)據(jù)。

當(dāng)用戶離開當(dāng)前activity管理的用戶界面,或Android需要回收內(nèi)存時(shí),acitivity也會被銷毀,所以,為了用戶的體驗(yàn),Android 不會為了回收內(nèi)存,而去銷毀正在運(yùn)行的activity。

activity只有在暫?;蛘咄V?fàn)顟B(tài)下才可能會被銷毀

在使用Android studio進(jìn)行開發(fā)的時(shí)候,查看Log日志是非常重要的。

使用android.util類記錄日志信息,不僅可以控制日志的內(nèi)容,還可以用來控制信息重要程度的日志級別。  Android支持五種日志級別:

1.ERROR:  Log.e(...)  說明:錯(cuò)誤

2.WARNING: Log.w(...) 說明:警告

3.INFO : Log.i(..) 說明:信息型消息

4.DEBUG: Log.d(...) 說明:調(diào)試輸出:可能被過濾掉

5.VERBOSE: Log.v(...) 說明:只用于開發(fā)..   

在做開發(fā)的時(shí)候R文件是一個(gè)令人非常頭疼的地方,當(dāng)你不經(jīng)意去刪改R文件里面的一些東西,R文件就會報(bào)錯(cuò),然后就導(dǎo)致你整個(gè)項(xiàng)目都會出錯(cuò),所以處理R類的問題是非常重要的。

若當(dāng)你資源編譯錯(cuò)誤有時(shí)出現(xiàn)一些莫名其妙錯(cuò)誤的狀況的時(shí)候,你不妨可以試試以下這幾種方法:

1.重新檢查資源文件中XML文件的有效性

2.清理項(xiàng)目

3.使用Gradle 同步項(xiàng)目

4.運(yùn)行Android Lint


Nota Keluaran

Penyertaan Popular