Ich habe einige von diesen um stackoverflow gesehen, aber keiner von ihnen löst mein Problem. Ich habe versucht, die abgeleiteten Daten zu löschen, die Funktion neu zu tippen und eine Reinigung durchzuführen. Das einzige, was funktioniert, ist den Code zu kommentieren, aber ich brauche den Code für meine App. Der Fehler trat nicht auf, bis ich zu Xcode aktualisiert 8 und meinen Code Swift 3.Befehl fehlgeschlagen wegen Signal: Segmentierungsfehler: 11 nach dem Upgrade auf Xcode 8 und Swift 3
1. While emitting IR SIL function @_TFFC13RLA_Volunteer8TeamsTVC18addBarButtonTappedFT6senderCSo15UIBarButtonItem_T_U0_FCSo13UIAlertActionT_ for expression at [/Volumes/.../Developer/RLA/RLA-Volunteer/RLA Volunteer/TeamsTVC.swift:91:89 - line:109:9] RangeText="{ (action) in
if let team = alertController.textFields?[0].text {
if team.characters.count == 0 {
let errorAlertController = UIAlertController(title: "Add a team", message: nil, preferredStyle: .alert)
self.present(errorAlertController, animated: true, completion: nil)
return
}
let teamItem = Team(teamName: team)
let teamsRef = self.ref.child("teams")
teamsRef.child(team.lowercased()).setValue(teamItem.toDictionary, withCompletionBlock: { (error, success) -> Void in
if error != nil {
print("Error: \(error!.localizedDescription)")
}
else {
print("Data saved!")
}
})
}
}"
Die gesamte Funktion wie folgt aussieht:
@IBAction func addBarButtonTapped(sender: UIBarButtonItem) {
// add teams to list
let alertController = UIAlertController(title: "Add Team", message: nil, preferredStyle: .alert)
alertController.addTextField { (textField) in
textField.placeholder = "Team"
}
alertController.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil))
alertController.addAction(UIAlertAction(title: "Add", style: .default, handler: { (action) in
if let team = alertController.textFields?[0].text {
if team.characters.count == 0 {
let errorAlertController = UIAlertController(title: "Add a team", message: nil, preferredStyle: .alert)
self.present(errorAlertController, animated: true, completion: nil)
return
}
let teamItem = Team(teamName: team)
let teamsRef = self.ref.child("teams")
teamsRef.child(team.lowercased()).setValue(teamItem.toDictionary, withCompletionBlock: { (error, success) -> Void in
if error != nil {
print("Error: \(error!.localizedDescription)")
}
else {
print("Data saved!")
}
})
}
}))
present(alertController, animated: true, completion: nil)
}
In welcher Zeile ist das Problem? – matt
Der Fehler sagt seinen ganzen Bereich des Textes, den ich in den ersten Block setzte. "zum Ausdruck in [/Volumes/.../Developer/RLA/RLA-Volunteer/RLA Volunteer/TeamsTVC.swift: 91: 89 - line: 109: 9]" –
Richtig, aber die Idee ist es, mehr auszumerken und mehr, bis Sie die tatsächliche Ursache des Problems finden. "Binäre Suche", weißt du nicht. – matt