我們今天繼續來做留言板。
最後要長這個樣子。
因為昨天已經安裝 Realm 套件並建立資料模型,
所以今天在程式一開始記得先引入:
import RealmSwift
這樣後續才能使用 Realm 的資料讀寫功能。
在程式中宣告對應的屬性,方便操作 UI:
// MARK: - IBOutlet
@IBOutlet weak var txfUser: UITextField! // 使用者名稱輸入框
@IBOutlet weak var lbUser: UILabel! // 顯示目前使用者名稱
@IBOutlet weak var lbComments: UILabel! // 顯示留言總數
@IBOutlet weak var tbvData: UITableView! // 顯示留言列表的 TableView
@IBOutlet weak var txvContent: UITextView! // 輸入留言內容
@IBOutlet weak var btnSent: UIButton! // 送出留言按鈕
@IBOutlet weak var btnSort: UIButton! // 排序留言按鈕
我們需要一些變數來管理資料與狀態:
// MARK: - Proprtty
// 儲存留言內容的陣列
var messageArray: [MessageBoard] = []
// 排序
var isAscending = false
messageArray
:用來存放從資料庫讀取的留言。isAscending
:用來記錄目前的排序方向,方便切換「最新 → 最舊」或「最舊 → 最新」。在 viewDidLoad
中進行初始設定:
// MARK: - LifeCycle
override func viewDidLoad() {
super.viewDidLoad()
setUi() // UI 設定
dataBase() // 從資料庫載入資料
}
建立一個 setUi()
來集中處理 UI:
// MARK: - UI Setting
func setUi(){
tableSet() // TableView 基本設定
btnSent.setTitle("送出", for: .normal) // 設定送出按鈕的文字
}
今天我們完成了留言板的 畫面連接 與 初步設定。
接下來只要把資料庫功能與 TableView 顯示串起來。