我正在创建待办事项列表应用程序,并希望按优先级对tableviewcontroller进行排序。如果任务很重要,我希望它位于待办事项列表的顶部,如果它不重要,我希望它位于重要任务的下方/之后。我一直在试图找出如何对其进行排序,但一直未能解决。感谢您的帮助。
class ToDoTableViewController: UITableViewController {
var toDos : [ToDoCoreData] = []
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
getToDos()
}
func getToDos() {
if let context = (UIApplication.shared.delegate as? AppDelegate)?.persistentContainer.viewContext{
if let coreDataToDos = try? context.fetch(ToDoCoreData.fetchRequest()) as? [ToDoCoreData] {
if let theToDos = coreDataToDos {
toDos = theToDos
tableView.reloadData()
}
}
}
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "reuseIdentifier", for: indexPath)
let toDo = toDos[indexPath.row]
if let name = toDo.name {
if toDo.important {
cell.textLabel?.text = "âï¸" + name
} else {
cell.textLabel?.text = toDo.name
}
}
return cell
}