1.1 對ListView控件的效率優(yōu)化
a、重用contentView,在contentView為空的時候,才進行布局的填充,從而大大的減少了加載XML布局文件的內存消耗。
b、ViewHolder為static,靜態(tài)類只會在第一次加載時會耗費比較長時間,但是后面就可以很好幫助加載,同時保證了內存中只有一個。
c、數(shù)據(jù)分葉加載
d、動態(tài)加載,僅在需要加載的時候加載數(shù)據(jù)項。監(jiān)聽滾動消息,ListView有個回調(onScroll和onScrollStateChange),檢查當滾動狀態(tài)改變時,即滾動到底部時,我們就加載這N項
二、說說mvc模式的原理,它在android中的運用
android的官方建議應用程序的開發(fā)采用mvc模式。何謂mvc?
mvc是model,view,controller的縮寫,mvc包含三個部分:
模型(model)對象:是應用程序的主體部分,所有的業(yè)務邏輯都應該寫在該層。
視圖(view)對象:是應用程序中負責生成用戶界面的部分。也是在整個mvc架構中用戶唯一可以看到的一層,接收用戶的輸入,顯示處理結果。
控制器(control)對象:是根據(jù)用戶的輸入,控制用戶界面數(shù)據(jù)顯示及更新model對象狀態(tài)的部分,控制器更重要的一種導航功能,想用用戶出發(fā)的相關事件,交給model處理。
android鼓勵弱耦合和組件的重用,在android中mvc的具體體現(xiàn)如下:
1)視圖層(view):一般采用xml文件進行界面的描述,使用的時候可以非常方便的引入,當然,如何你對android了解的比較的多了話,就一定可以想到在android中也可以使用javascript+html等的方式作為view層,當然這里需要進行java和javascript之間的通信,幸運的是,android提供了它們之間非常方便的通信實現(xiàn)。
2)控制層(controller):android的控制層的重任通常落在了眾多的acitvity的肩上,這句話也就暗含了不要在acitivity中寫代碼,要通過activity交割model業(yè)務邏輯層處理,這樣做的另外一個原因是android中的acitivity的響應時間是5s,如果耗時的操作放在這里,程序就很容易被回收掉。
3)模型層(model):對數(shù)據(jù)庫的操作、對網(wǎng)絡等的操作都應該在model里面處理,當然對業(yè)務計算等操作也是必須放在的該層的。
文章名稱:(十三)android基礎知識總結-創(chuàng)新互聯(lián)
文章URL:http://aaarwkj.com/article22/jdhcc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、全網(wǎng)營銷推廣、做網(wǎng)站、企業(yè)建站、移動網(wǎng)站建設、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容