国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Android基礎(chǔ)

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

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

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

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

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

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

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

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

 我也是因?yàn)榭戳诉@本書之后更改了我自己的一些編譯習(xí)慣。因?yàn)閍ndroid的一個(gè)很中要的一個(gè)編譯思想就是MVC模式,不管是你在給一個(gè)簡(jiǎn)單按鈕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)級(jí)別的共享日志中心。Log類中有好幾個(gè)日志記錄方法:

其中使用最多的是:

public static int d(String tag,String msg):  ddaibiao "debug” ,用來表示日志信息的級(jí)別,第一個(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也會(huì)被銷毀,所以,為了用戶的體驗(yàn),Android 不會(huì)為了回收內(nèi)存,而去銷毀正在運(yùn)行的activity。

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

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

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

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文件就會(huì)報(bào)錯(cuò),然后就導(dǎo)致你整個(gè)項(xiàng)目都會(huì)出錯(cuò),所以處理R類的問題是非常重要的。

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

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

2.清理項(xiàng)目

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

4.運(yùn)行Android Lint


Release Notes

Popular Entries