【发布时间】:2020-05-16 19:03:53
【问题描述】:
我收到此错误:
无法将“Int”类型的值转换为预期的参数类型“String.Index”
在线Goals[0].remove(at: indexPath.row)。我该如何解决?
这是我的代码:
import UIKit
class GoalsViewController: UIViewController {
@IBOutlet weak var tableView: UITableView!
var Goals: [String] = ["goal 1", "goal 2", "goal 3"]
override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
}
}
extension GoalsViewController: UITableViewDataSource, UITableViewDelegate {
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if indexPath.section == 0 {
Goals[0].remove(at: indexPath.row)
tableView.reloadData()
}
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return Goals.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "GoalCell_1", for: indexPath)
cell.textLabel?.text = Goals[indexPath.row]
return cell
}
}
【问题讨论】:
-
你到底想在这里实现什么?
-
我试图在单击单元格后将其删除,然后最终将其移动到新的表格视图