2.1 創(chuàng)建新類
- 右鍵單擊類包曲伊,選擇New→Java Class菜單項凰锡。
- 生成getter方法與setter方法:右擊構(gòu)造方法后方區(qū)域,選擇Generate...→Getter and Setter菜單項。選擇變量奄容,單擊OK按鈕。
2.2 Android 與 MVC設(shè)計模式
應(yīng)用對象分為模型产徊、視圖和控制器三類昂勒。Android應(yīng)用基于模型-視圖-控制器(Model-View-Controller)的架構(gòu)模式進(jìn)行設(shè)計。MVC設(shè)計模式表明舟铜,應(yīng)用的任何對象戈盈,歸根結(jié)底都屬于模型對象、視圖對象以及控制器對象中的一種谆刨。
- 模型對象存儲著應(yīng)用的數(shù)據(jù)和業(yè)務(wù)邏輯塘娶。模型類常用來映射與應(yīng)用相關(guān)的一些事物。模型對象不關(guān)心用戶界面痊夭,它為存儲和管理應(yīng)用數(shù)據(jù)而生刁岸。
- 視圖對象知道到如何在屏幕上繪制自己,以及如何響應(yīng)用戶的輸入她我。凡是能在屏幕上看到的對象虹曙,就是視圖對象。
- 控制器對象含有應(yīng)用的邏輯單元番舆,是視圖對象與模型對象的聯(lián)系紐帶根吁。在Android的世界里,控制器通常是Activity合蔽、Fragment或Service的子類击敌。
使用MVC設(shè)計模式的好處
- 以Java類組織代碼有助于從整體視角設(shè)計和理解應(yīng)用。同樣拴事,把java類以模型層沃斤、視圖層、控制器層進(jìn)行分類組織刃宵,也有助于我們設(shè)計和理解Android應(yīng)用衡瓶。這樣我們就可以按層而非一個個類來考慮設(shè)計開發(fā)了。
- MVC模式還便于復(fù)用類牲证。相比功能多而全的類哮针,功能單一的專用類更有利于代碼復(fù)用
2.3 更新視圖層
- 在Android的世界里,視圖對象通常由XML布局文件生成。
- 新增按鈕以及對文本視圖的調(diào)整(activity.xml)
- 更新字符串資源定義(strings.xml)
- 新增字符串
2.4 更新控制器層
- 增加按鈕變量及Question對象數(shù)組(QuizActivity.java)
private Button mNextButton;
private Button mPrevButton;
private TextView mQuestionTextView;
private Question[] mQuestionBank = new Question[]{
new Question(R.string.question_australia,true),
new Question(R.string.question_oceans,true),
new Question(R.string.question_mideast,false),
new Question(R.string.question_africa,false),
new Question(R.string.question_americas,true),
new Question(R.string.question_asia,true),
};
通過多次調(diào)用Question類的構(gòu)造方法十厢,創(chuàng)建了Question對象數(shù)組等太。- 使用TextView
略...
2.5 在物理設(shè)備上運行應(yīng)用
略...
2.6 添加圖標(biāo)資源
- 在項目中添加資源
- 首先打開Project視圖,展開app/src/main/res目錄蛮放,會看到名為mipmap-hdpi和mipmap-xhdpi目錄將定制好的drawable-mdpi缩抡、drawable-hdpi、drawable-xhdpi包颁、drawable-xxhdpi四個目錄復(fù)制粘貼到Android Studio的app/src/main/res目錄中瞻想。
- 在XML文件中引用資源
為Button組件新增兩個屬性:
android:drawableRight(可選)=“@drawable/圖片名”
android:drawablePadding=“(4)dp”在XML資源文件中,通過資源類型和資源名稱娩嚼,可引用其他資源蘑险。以@string/開頭的是引用字符串資源。以@drawable/開頭的是應(yīng)用drawable資源岳悟。
挑戰(zhàn)
將Button組件替換成ImageButton組件漠其。
ImageButton組件繼承自ImageView。Button組件則繼承自TextView竿音。
ImageView和TextView都繼承自View和屎。
ImageButton需要調(diào)整的屬性:
android:src=“@drawable/圖片名”