【Xcode】超級簡單版的匯率換算

GIF沒出來的話,可點連結: https://i.giphy.com/l0HlCstd4eLM1Lge4.gif

時間過很快,課程已走一半,前一堂課也終於把畫面和程式結合了,雖然對於Xcode和Swift語法很多都還一知半解,上課講義的擇偶條件也還沒全部看懂,無法一口氣寫出來,不過還是可以練習超簡單的英鎊兌換台幣的匯率換算~

18559718275_ecdfc5872f_k

溼答答的陰雨天,又懷念起去年的英國自由行了。開始之前,先欣賞一下倫敦塔橋的美景吧!(誤)

首先建立自己的新類別:

*最上方工具列選擇File >New>File…新增Cocoa Touch Class

接著回到MainStoryboard,將要製作的View Controller選定這個新類別。

*點選View Controller

*右邊選單選擇Show the Identity inspector

*Class選擇剛剛新建的類別。

exchange02

▲然後就可開始在MainStoryboard製作畫面了!這邊只是簡單放張圖,以及英鎊和台幣的說明,還有換算按鈕。

*Label:英鎊、GBP、台幣、NTD、還有一個空白Label(先隱藏,換算完才會
顯示的台幣金額)。

*Button:換算的按鈕,有換字體顏色(白)和背景顏色(藍)。

這邊還要特別提一下,英鎊金額的輸入框是參考同學鴨鴨的<小費計算機>作業,才知道可以有以下設定:

*TextField:英鎊金額的輸入框

-Placeholder:未輸入任何東西前的淺灰色備註說明,當要輸入時,就會自動
清掉。所以我先填上「請輸入金額」
-Clear Button:一開始看不到,當輸入第一次後,就會出現清除的X,方便使
用者按了X可直接輸入第二次。
-Keyboard Type:限定使用數字鍵盤,可避免使用者輸入到其他文字。

exchange03

▲最後就來寫程式吧!針對等下會有動作的元件,通通拉線到程式碼編輯區。

*Xcode視窗右上角選兩個圈圈重疊的Show the Assistant editor

*點選元件,一指按住鍵盤control,另一指拉線到程式碼編輯區,動作和之前
在Storyboard拉頁面時一樣(參考此篇: 一頁兩頁三頁四頁連成App)

*每拉一個元件,需要指定它的動作和命名。

-IBOutlet NTD:空白Label,換算完才會顯示的台幣金額

-IBOutlet GBP:TextField,英鎊金額的輸入框

-IBAction change:UIButton,換算按鈕

*前兩個IBOutlet都只是輸入和換算結果的內容顯示,真正要執行和判斷的動作
是IBAction,所以接下來就是把運算程式寫在IBAction的func裡面。

       let exchange = 40.67
if GBP.text == “”
{
NTD.text = “輸入錯誤”
}
else
{
NTD.text = String(Double(GBP.text!)! * exchange)
}

*先設一個常數exchang=40.67,就是現在匯率,1英鎊等於40.67台幣。

*接著同樣參考同學鴨鴨的<小費計算機>作業,避免使用者沒輸入金額就按換
算,所以先下if條件,如果沒輸入東西就顯示「輸入錯誤」

*其他則是else計算 台幣等於多少英鎊乘以exchange

▲大功告成!快在Xcode模擬器跑跑看,亂輸入數字多少英鎊可換算成多少台幣,按X可清除重新計算,若沒輸入數字也會跑出輸入錯誤的提示。

>> Xcode檔上傳至Github,可點此連結參考

【小結】

看似簡單,其實也花了不少時間,中間還因為拉線斷掉問題,跑去請教公司的IT,好不容易完成後,明知道還有很多東西要學,PM職業病就馬上發作了,例如: 匯率應該是浮動的、應該要方便切換成台幣兌英鎊、應該要改成下拉選單,新增各國貨幣、萬一網路沒連線還可以用嗎? …..諸如此類的問題,等之後再說吧XD

——————————————————————————————————————-

▼按讚加入《好奇小悶》粉絲專頁

發佈留言

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

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料