UITextAutocorrectionTypeNo hat nicht für mich funktioniert.
Ich arbeite an einer Kreuzworträtsel-App für das iPhone. Die Fragen sind in UITextViews und ich benutze UITextFields für die Benutzereingabe jedes Buchstabens. Durch Berühren einer Frage (UITextView) wird das TextField für die erste Antwort zu FirstResponder.
Es funktioniert alles gut, aber die UITextViews sind immer noch Rechtschreibprüfung und markieren die falschen Wörter in der Frage, auch wenn ich sie UITextAutocorrectionTypeNo.
setze %Vor%Ich rufe UITextView nicht an einem anderen Ort an.
Ich hatte das gleiche Problem. Die Lösung ist sehr einfach, aber nicht dokumentiert: Sie können nur die Eigenschaften ändern, die im Protokoll UITextInputTraits
definiert sind, während der betreffende UITextView
NICHT der erste Responder ist. Die folgenden Zeilen haben es für mich behoben:
Hoffe das hilft jemandem.
Ein möglicherweise hilfreicher Tipp, der aus Engin Kurutepe folgt:
Wenn Sie UITextView unterklassifiziert haben, können Sie UITextInputTraits
in der Unterklassenimplementierung von becomeFirstResponder
überschreiben, etwa so:
Es ist dann nicht nötig, resign
/ becomeFirstResponder
explizit um deine Eigenschaften zu ändern.
Ich habe eine Lösung, aber es ist nicht so, wie es sein sollte. Wenn jemand etwas besser weiß, bitte sag es mir.
Die Autokorrektur wird nach dem ersten Touch ausgeführt. Also weise ich einen neuen UITextView zu und setze ihn wie den berührten TextView. Dann ersetze ich die berührte textView durch meine neue TextView. Daher kann jede UITextView-Instanz nur einmal berührt werden und verschwindet. :)
%Vor%Tags und Links objective-c uitextview spell-checking