In meiner Anwendung habe ich beim Auswählen einer Zelle ein Objekt im Array hinzugefügt und beim erneuten Auswählen der Zelle die Auswahl aufgehoben und das Objekt entfernt. Ich habe diesen Code verwendet, aber mir einen Fehler gegeben.
extension Array {
func indexOfObject(object : AnyObject) -> NSInteger {
return (self as NSArray).indexOfObject(object)
}
mutating func removeObject(object : AnyObject) {
for var index = self.indexOfObject(object); index != NSNotFound; index = self.indexOfObject(object) {
self.removeAtIndex(index)
}
}
}
class MyViewController: UITableViewController {
var arrContacts: [Any] = []
var contacts: [Any] = []
func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {
arrContacts.removeObject(contacts[indexPath.row])
}
}
Es gibt mir 2 Fehler wie folgt:
C-style for statement has been removed in Swift 3
Value of type '[Any]' has no member 'removeObject'
Set<Contact>
ein Array anstelle eines Arrays verwenden. Können Sie weitere Informationen zu Ihrem Kontaktobjekt bereitstellen? Wenn Sie es selbst gemacht haben, müssen Sie es anpassenHashable
undEquatable
in ein Set setzen