image

開啟strings.xml準備自定義文字

image

   1: <?xml version="1.0" encoding="utf-8"?>
   2: <resources>
   3:  
   4:     <string name="app_name">ArithmeticTest</string>
   5:     <string name="action_settings">Settings</string>
   6:     <string name="hello_world">Hello world!</string>
   7:     <string name="InputFirstNumber">輸入第一個數字</string>
   8:     <string name="InputSecondNumber">輸入第二個數字</string>
   9:     <string name="CalResult">計算結果</string>
  10:     <string name="Addition">+</string>
  11:     <string name="Subtraction">-</string>
  12:     <string name="Multiplication">x</string>
  13:     <string name="Division">/</string>
  14:     
  15: </resources>

人機介面加入兩個TextEdit和四個按鈕分別對應+-*/符號

以下以+號為例

image

編輯人機介面完成如下:

image

執行模擬:

image

針對按鈕事件開始撰寫主程式MainActivity.java

虛線內為加入的函式庫

   1: package com.example.arithmetictest;
   2:  
   3: import android.os.Bundle;
   4: import android.app.Activity;
   5: import android.view.Menu;
   6: //------------------------------------------------------
   7: import android.view.View;
   8: import android.view.View.OnClickListener;
   9: import android.widget.Button;
  10: import android.widget.TextView;
  11: import android.widget.EditText;
  12: //------------------------------------------------------

加入變數宣告

   1: public class MainActivity extends Activity {
   2:     //---------------------------------------------------
   3:     private TextView view    = null;    // 資訊顯示 
   4:     private TextView note    = null;    // 提示 
   5:     private EditText edtNum1 = null;    // 數字1 
   6:     private EditText edtNum2 = null;    // 數字2
   7:     private Button   btnAdd  = null;    // 加法按鈕
   8:     private Button   btnSub  = null;    // 剪髮按鈕 
   9:     private Button   btnMul  = null;    // 乘法按鈕
  10:     private Button   btnDiv  = null;    // 除法按鈕
  11:     private int      num1    = 0;       // 儲存第一個數字
  12:     private int      num2    = 0;       // 儲存第二個數字 
  13:     //---------------------------------------------------

onCreate事件加入初始化

   1:  
   2:         this.edtNum1.setOnClickListener(new OnClickListener(){
   3:             @Override
   4:             public void onClick(View v){
   5:                 MainActivity.this.edtNum1.setText("");    // 清除文字
   6:             }
   7:         
   8:         });
   9:         this.edtNum2.setOnClickListener(new OnClickListener(){
  10:             @Override
  11:             public void onClick(View v)
  12:             {
  13:                 MainActivity.this.edtNum2.setText("");    // 清除文字
  14:             }
  15:         });
  16:         this.btnAdd.setOnClickListener(new OnClickListener(){
  17:             @Override
  18:             public void onClick(View v){
  19:                 MainActivity.this.num1 = Integer.parseInt(MainActivity.this.edtNum1.getText().toString());
  20:                 MainActivity.this.num2 = Integer.parseInt(MainActivity.this.edtNum2.getText().toString());
  21:                 MainActivity.this.note.setText("+");
  22:                 MainActivity.this.view.setText(String.valueOf(num1+num2));
  23:             }
  24:         });
  25:         this.btnSub.setOnClickListener(new OnClickListener(){
  26:             @Override
  27:             public void onClick(View v)
  28:             {
  29:                 MainActivity.this.num1 = Integer.parseInt(MainActivity.this.edtNum1.getText().toString());
  30:                 MainActivity.this.num2 = Integer.parseInt(MainActivity.this.edtNum2.getText().toString());
  31:                 MainActivity.this.note.setText("-");
  32:                 MainActivity.this.view.setText(String.valueOf(num1-num2));                
  33:             }
  34:         });
  35:         this.btnMul.setOnClickListener(new OnClickListener(){
  36:             @Override
  37:             public void onClick(View v){
  38:                 MainActivity.this.num1 = Integer.parseInt(MainActivity.this.edtNum1.getText().toString());
  39:                 MainActivity.this.num2 = Integer.parseInt(MainActivity.this.edtNum2.getText().toString());
  40:                 MainActivity.this.note.setText("*");
  41:                 MainActivity.this.view.setText(String.valueOf(num1*num2));
  42:             }
  43:         });
  44:         this.btnDiv.setOnClickListener(new OnClickListener(){
  45:             @Override
  46:             public void onClick(View v)
  47:             {
  48:                 MainActivity.this.num1 = Integer.parseInt(MainActivity.this.edtNum1.getText().toString());
  49:                 MainActivity.this.num2 = Integer.parseInt(MainActivity.this.edtNum2.getText().toString());
  50:                 MainActivity.this.note.setText("/");
  51:                 MainActivity.this.view.setText(String.valueOf(num1/num2));                
  52:             }
  53:         });
  54:         //---------------------------------------------------    

image

image

image

image

範例程式:ArithmeticTest

arrow
arrow
    全站熱搜

    me1237guy 發表在 痞客邦 留言(0) 人氣()