我试图从字典中的数组中删除一个元素,但是当我从 tableview 中删除它时,该值并没有从字典中删除。我尝试删除数组的方式有误吗?
marker.buttonAction["button actions array"]?.remove(at: indexPath.row)
//Function to remove array from dictionary and tableview.
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) {
if editingStyle == .delete {
if let marker = markUpPlist.arrayObjects.filter({$0.tagClip == currentSelectedMarker}).first {
print(marker.buttonAction["button actions array"]?[indexPath.row].action)
marker.buttonAction["button actions array"]?.remove(at: indexPath.row)
tableView.beginUpdates()
tableView.deleteRows(at: [indexPath], with: .automatic)
tableView.endUpdates()
}
}
}
//Variable which stores the dictionary
var buttonAction : [String: [ButtonAction]] = [:]
//ButtonAction array
class ButtonAction: Codable {
var action: String
var array_linked_of_buttons: [[String:String]]
init(action: String, array_linked_of_buttons: [[String:String]]) {
self.action = action
self.array_linked_of_buttons = array_linked_of_buttons
}
}
最佳答案
答案是我忘记在删除数据后重新保存数据。代码工作正常,如果这对其他人有帮助,我将离开这个问题。
关于arrays - Swift - 从字典中删除一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54244981/