Swift UITableView多選:UITableViewDelegate
在開發 iOS App 時,有時候會需要使用 UITableView 來建立一個可以多選的列表,而要實現多選的功能,就需要使用 UITableViewDelegate 來實現。
在 Swift 中,要實現 UITableViewDelegate 的多選功能,可以使用以下的程式碼:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if let cell = tableView.cellForRow(at: indexPath) {
if cell.accessoryType == .checkmark {
cell.accessoryType = .none
} else {
cell.accessoryType = .checkmark
}
}
}
上面的程式碼會在使用者點擊 UITableView 的每一個 cell 時,將 cell 的 accessoryType 改變為 checkmark,以實現多選的功能。
此外,如果要在 UITableView 中顯示多選的狀態,可以在 UITableView 的 cellForRowAt 方法中,將 cell 的 accessoryType 設定為 checkmark:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
cell.accessoryType = .checkmark
return cell
}
透過以上的程式碼,就可以在 UITableView 中實現多選的功能,讓使用者可以選擇多個項目。
推薦閱讀文章
UITableView Tutorial for Beginners
UITableView Tutorial: Multiple Selection
How to make a UITableView with multiple selection
UITableView Multiple Selection in Swift
UITableView Multiple Selection in Swift</a