Presentation is loading. Please wait.

Presentation is loading. Please wait.

實驗四:單位轉換程式.

Similar presentations


Presentation on theme: "實驗四:單位轉換程式."— Presentation transcript:

1 實驗四:單位轉換程式

2 實驗四 主題 目的 環境需求 練習製作一個單位轉換小程式 並可以讓使用者輸入數字以及選擇轉換單位
學習如何設計佈局文件,包含EditText、TextView、Spinner、Button元件的使用 學習如何使用監聽事件 環境需求 Java SE Development Kit (JDK) Android Studio 本實驗為練習製作一個單位轉換小程式,並可以讓使用者輸入數字以及選擇轉換單位。

3 實驗四範例 1.左邊為開始主畫面,包含一個EditText、一個TextView、兩個spinner、一個Button,初始值為 1公分 = 1公分。 2.中間表示選項中有多種單位可以供使用者選擇。 3.使用者輸入要轉換的數量,並選擇好要轉換的單位後按下計算按鈕,即會把轉換的數值顯示在 TextView中。

4 新增專案,專案名稱UnitConversion
1 2 3 1.新建一個Android專案 2.輸入應用程式名稱UnitConversion 3.輸入公司/個人/學校網域名稱bnlab.ce.ncu.edu.tw,或進行套件名稱編輯 4. 選擇專案儲存位置 設定完成後點Next 4

5 新增專案 5 6 5.選擇目標裝置為Phone and Tablet 6.選擇最低SDK版本為 API 17: Android4.2,
設定完成後點Next

6 新增專案 7 7.選擇空白活動視窗的樣式,並點選Next。

7 新增專案 8 8.設定活動以及對應佈局檔案的名稱,使用預設值不必做修改 按下Finish專案即創建完畢。

8 建立單位轉換選單選項陣列 res/values/strings.xml
在Android專案結構中,點2下打開res/values/strings.xml 文件 輸入如投應片框起的標籤內容,輸入時會有提示文字,請用選取,快速建立名稱為data的String Array

9 應用程式畫面 2 3 1 打開res/layout/activity_main.xml佈局文件
1.點選Text頁籤,將根結點佈局改為TableLayout,修改完後,切回Design頁籤 2.依序將2各TableRow元件放入到Component Tree視窗的TableLayout中,將一個EditText(numberDecimal)和Spinner元件放入第一個TableRow中;將一個TextView和Spinner元件放入第二個TableRow中;最後將一個Button放入到TableLayout中,Component Tree視窗如投影片2標示位置 完成應用程式畫面 1

10 程式碼架構 3 public class MainActivity extends Activity implements OnClickListener { int unit1, unit2; double input, output; double unit_tran[] = { 1.0, 100.0, , 2.54, 30.48, , }; double unit_tran_inv[] = { 1.0, 0.01, , , , , }; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button bt = (Button) findViewById(R.id.button); bt.setOnClickListener(this); } public void onClick(View v) { Spinner sp1 = (Spinner) findViewById(R.id.spinner); Spinner sp2 = (Spinner) findViewById(R.id.spinner2); EditText et = (EditText) findViewById(R.id.editText); TextView tv = (TextView) findViewById(R.id.textView); unit1 = sp1.getSelectedItemPosition(); unit2 = sp2.getSelectedItemPosition(); String str=et.getText().toString(); if(str.length()>0){ input = Double.parseDouble(str); output = input *unit_tran[unit1] * unit_tran_inv[unit2]; tv.setText("=" + String.valueOf(output)); 1 程式解說請見備忘稿 2 4 5 程式碼解說 1.宣告變數 int unit1, unit2; 紀錄選單被選到的項目位置,double input 紀錄EditText元件上輸入的數值;double output;紀錄計算後要輸出到TextView元件上的數值,double unit_tran_inv [] 設定要從公分轉換到對應索引值單位的運算比例, unit_tran [] ; 設定將輸入值轉換為公分的運算比例 2.利用findViewId()方法傳入Button元件的索引代號,找出XML中定義的Button元件,並設定Button元件監聽onClick事件 3.讓程式實作OnClickListener 介面 4.讓程式實作OnClickListener 介面中的onClick()方法 5.利用findViewId()方法傳入Spinner, EditText, TextView元件的索引代號,找出XML中定義的Spinner,EditText,TextView元件 6.取出2各Spinner元件中選取的位置 7.取出EditText 元件中輸入的文字,判斷輸入文字長度是否大於0,若是將輸入文字轉換為double數值 8.先將輸入的數值乘以unit_tran [第一個選項選到位置],轉換為公分單位,再乘以unit_tran_inv [第二個選項選到位置],轉換為目的地單位數值 9.將運算結果設定到TextView元件上 完成! Note:輸入程式時請利用選擇跳出的提示,幫助快速輸入程式,另外事件程式製作方式,請利用Alt+Enter產生修正錯誤方式提示視窗,選取修正方式。 6 7 8 9


Download ppt "實驗四:單位轉換程式."

Similar presentations


Ads by Google