Android學習筆記1—簡單計算器

 實驗題目:
          在Android模擬器裡,完成一個簡單的計算機功能。
實驗目的:
          瞭解Android的常見控件“文本框、按鈕”等的使用。
 
第一步、新建工程

 


選擇SDK的版本,例如我們這裡選擇2.3.3

 

 
至此工程新建完畢。

 
Android 工程已經默認創建瞭一個  main.xml的界面
雙擊打開該界面。調整界面的屏幕大小。

 
Android界面的默認佈局是“流式佈局”,對於做慣瞭windows開發的人來說,可能還有點不適應。
因此首先將界面佈局調整為“絕對佈局(就是用x,y來控制位置)”

 
選擇AbsoluteLayout佈局

 在界面上添加如下控件。

依次給按鈕控件設置ID

 
按鈕ID,從btn0開始,
0—–btn0
1—–btn1
2—–btn2
…..
9—–btn9
0—btn10
(+)—-btn11
(-)—-btn12
(*)—-btn13
(/)—-btn14
 
完整的佈局如下:

一個簡單計算器的外觀完成瞭。 
現在來添加代碼。

Anroid的界面是xml文件構成,而與代碼配套的代碼文件是放在src下面的。例如jsqActivity.java

打開 jsqActivity.java 這個文件,我們可以看到初始代碼。
註意:在這裡已經找不到main函數瞭。
程序的啟動函數是從Activity開始的。
 
onCreate() 在 Activity 構造時執行,我們可以在這個地方加入我們的按鈕事件代碼。
Android的事件要手工去掛接,這一點上就沒有VisualStudi 方便多瞭。
掛接事件要經理2個步驟:
(1)捕獲該控件

 
Button btn1=(Button)this.findViewByID(id);
通過findViewByID插在到該控件的id,這也就是為什麼我們在進行界面佈局的時候要指定控件ID 的原因。
通過控件的ID將控件和對象進行關聯,然後就可以通過對象來操作該控件瞭。
提示:
     常用的對象有Button(按鈕)、TextView(文本框)等等
   
(2)綁定按鈕事件

這裡的代碼和java標準代碼是一致的,也是采用匿名事件代碼編寫。
通過給Button對象,設置一個監聽函數,有監聽函數去處理這個事件,並調用相應的方法。
有些時候為瞭方便書寫,還可以這麼寫

  2個紅框裡的代碼效果完全一致。
 
如果熟練瞭,推薦使用下面的辦法綁定事件,可以少敲些代碼,少定義些對象。

 
那麼事件綁定完瞭,就要實現具體功能,例如,點擊按鈕1,就要把“1”添加到文本款

 
其它按鈕如法炮制:
例如按鈕2

 
數字按鈕就這麼做完掉。0 ~ 9 類似

 
現在這個界面已經可以實現0 ~ 9的按鍵輸入瞭。
那麼現在來實現“+” 加法功能。
分析:
       加法功能,實際上在代碼裡要完成2件事情
          (1)把txt文本框的內容保存
         (2) 清空txt文本框
         (3)在代碼裡的某一個位置(int Flag)保存現在的操作是加法

基本的思路: 加減乘除和“等號鍵”配合使用
現在加上,減法,乘法

 
   除法類似,留給你自己實現瞭。呵呵
  那麼“等號”按鈕的代碼如下:

 
 
至此,一個簡單的計算器完成瞭。我們現在來測試一下看看。
輸入 123+ 456
結果應該顯示 579

 接著計算 579  – 100
結果顯示 479

 
一個簡單計算器的功能基本實現瞭。
 
我們現在進行總結:
 
通過本實驗
     (1)應該掌握瞭“按鈕”事件的綁定,以及按鈕事件的編寫。
     (2)瞭解Android應用程序的啟動創建、運行啟動流程
                程序首先從 OnCreate 進行創建構造
     (3)數據類型的轉換
              例如String 轉float
                      
                      Float 轉String
             註意:文本框的內容不能直接給String,要轉換
                 因為   getText() 返回的並不是String

 
          (4)註意變量的【作用域】

事件裡的匿名函數是不能訪問err_txt 這個對象的,它隻能訪問全局的txt變量。這一點,要註意。
 

摘自 張建波專欄

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *