2016-08-24 4 views
1

Ich erhalte den folgenden Fehler in CrashlyticsEXC_BREAKPOINT 0x00000000e7ffdefe in Crashlytics

LoginViewController.swift Linie 277 LoginViewController.textField (UITextField, shouldChangeCharactersInRange: _NSRange, replacementString: String) -> Bool

der Code in meinem Projekt gibt es:

// MARK: - UITextFieldDelegate 
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool { 
    if textField == txtSearch && string != "\n"{ 
     var substring: String = textField.text! 
     substring = (substring as NSString).stringByReplacingCharactersInRange(range, withString: string) 
     self.searchAutocompleteEntriesWithSubstring(substring) 
    } 
    return true; 
} 

Dieser Fehler tritt nur manchmal auf

+0

Welcher ist Linie 277? Was ist der Fehler? – rmaddy

+0

Der Fehler ist EXC_BREAKPOINT 0x00000000e7ffdefe wie in Titel geschrieben – sdadsad

+0

Was ist der lesbare Fehler und Sie haben noch nicht darauf hingewiesen, welche Zeile 277 ist. – rmaddy

Antwort

1

Sie sind gezwungen, Ihre textField.text! auszupacken, die Null sein kann. Versuchen Sie den folgenden Code:

func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool { 
    if textField == txtSearch && string != "\n"{ 
     if let text = textField.text { 
      let substring = (text as NSString).stringByReplacingCharactersInRange(range, withString: string) 
      self.searchAutocompleteEntriesWithSubstring(substring) 
     } 
    } 
    return true 
} 
+0

Es scheint richtig ... aber ich kann den Fehler nicht reproduzieren ... wenn ich es versuche tippe zurück mit leerem Feld, es ist kein Absturz ... – sdadsad

+0

Wenn es für Sie funktioniert und es Ihnen geholfen hat, Ihr Problem zu beheben, dann markieren Sie es als Antwort. – Santosh

+0

Aber ich habe den Fehler auf meinem Gerät nicht reproduziert, bekam nur den Fehler in Stoff..wie könnte ich es reproduzieren? – sdadsad