期末app 小豬記帳本

bert os
bert os
Jun 13 · 5 min read

1

左邊的頁面是記事本然後右邊的頁面會把總花費顯示並且用發聲器唸一遍

2

3 程式碼講解

把自訂的類型存在一個陣列裡面
建立一個UIPickerView並設定delegate及dataSource來源為自己這個swift類別
要實作UIPickerView必須繼承UIPickerViewDelegate及UIPickerViewDataSource類別
這個function必須實作,用來設定選單的列數,我們只有一列故設定為1
這個function也必須實作,用來設定每一列的欄數,我們將其設定為與我們的陣列長度一樣
設定當選擇對應的列時,回傳的值就等同於陣列中相同足標的元素
當使用者選擇了其他欄時,更新TextField中的資料與使用者選擇的資料一致
即可實作出這個TypeSelector

實作一個UIDatePicker供使用者選擇日期

先宣告一個UIDatePicker類別方便待會實作
設定日期格式
建構一個UIDatePicker類別,設定日期格式為只選擇日期(格式分成兩種,一種是.date單純只選日期,而另一種為.DateAndTime可以選擇日期與時間),並將預設的日期設定在今天
將DateTextField的輸入方式從鍵盤置換成自己創建的UIDatePicker
用四個變數分別儲存四個時間資料,年/月/日/星期
建立一個toolBar
建立”完成” “取消” 及一個空白 並設定其對應的屬性及觸發條件為按下去的時候
把建立好的三個按鈕物件放進toolBar中,注意這邊放置的順序決定了顯示的方式,從左到右,並將toolBar設定為可以互動,最後再將這個內含三個按鈕的toolBar塞進DateTextField的輸入欄位中,也就是在自己建立的UIDatePicker上方.由於UIDatePicker不像UIPickerView一樣有function可以在資料更動的同時更新對應的資料,所以我們必須透過額外的按鈕來達成這個目標
定義當按下doneButton及cancelButton時要執行的動作,doneButton按下時,將當下DatePicker的資料寫入對應的變數中儲存起來,並同步textField中的文字

4.心得

終於弄完啦!!!我感覺這學期ios的作業賊多,感覺自己一天到晚關在mac教室裡苦幹。不過老師上課很認真又有趣,所以整體來說還是學到了很多東西。

5.遇到的問題和錯誤

本來是打算用CocoaPods來安裝Lottie函式庫然後放一個循環動畫,不過試了好幾次一直遇到Use of unresolved identifier LOTAnimationView的問題,上網爬了好多文也無解所以放棄了。

海大 iOS App 程式設計

學習 Swift iOS App 開發的海大學生作品集

    bert os

    Written by

    bert os

    海大 iOS App 程式設計

    學習 Swift iOS App 開發的海大學生作品集