現状
一つ前の質問から引き継いでいます。
segmentedControlに二つの変数を用意したのですが二つとも削除機能を持たせたいのですが、この場合
self.allTodo.remove(at: indexPath.row) && self.selectedTodo.remove(at: indexPath.row)
などにはできないと思うのですがどのようにしたら良いのですかね?
Swift5
1// 削除のアクションを設定する 2 let deleteAction = UIContextualAction(style: .destructive, title:"delete") { 3 (ctxAction, view, completionHandler) in 4 self.allTodo.remove(at: indexPath.row) 5 self.selectedTodo.remove(at: indexPath.row) 6 7 //削除した結果も保存 8 let data = try! NSKeyedArchiver.archivedData(withRootObject: self.allTodo, requiringSecureCoding: false) 9 UserDefaults.standard.set(data, forKey: "todoList") 10 let data2 = try! NSKeyedArchiver.archivedData(withRootObject: self.selectedTodo, requiringSecureCoding: false) 11 UserDefaults.standard.set(data2, forKey: "todoShare") 12 13 tableView.deleteRows(at: [indexPath], with: .automatic) 14 15 self.todos = self.allTodo 16 completionHandler(true) 17 tableView.reloadData() 18 }
self.allTodo.remove(at: indexPath.row)
と
self.selectedTodo.remove(at: indexPath.row)
を
続けて実行したいのであれば、現在のコードでいいと思いますが、なにか問題があるのでしょうか?
回答1件
あなたの回答
tips
プレビュー