Sie können zwei Schaltflächen für Ok und Cancel erstellen. Fügen Sie dann diese beiden als Untersichten in UIAlertView.Now hinzu, indem Sie den Text (Textlänge) im Textfeld prüfen. Sie können Aktionen aktivieren und deaktivieren.
Dies wird nur gepostet, um die Antwort seit ios 5 zu aktualisieren:
%Vor% UPDATE : iOS 8 Da Apple den UIAlertView für den UIAlertController veraltet hat. Es gibt keinen Delegatanruf mehr an alertViewShouldEnableFirstOtherButton:
Stattdessen würden Sie stattdessen die Eigenschaft buttons enabled über UITextFieldTextDidChangeNotification
setzen
Fügen Sie der Warnung eine Textansicht mit
%Vor%
- (void) addTextFieldWithConfigurationHandler: (void (^) (UITextField * textField)) configurationHandler
Implementieren Sie dann die Delegate-Methode
%Vor%
- (void) textFieldDidBeginEditing: (UITextField *) textField
Wenn sich der Text in textField ändert, ruft er einen Aufruf von "textFieldHasText:" auf und gibt eine NSNotification *
weiter %Vor%Vergessen Sie nicht, Ihren Beobachter zu entfernen, wenn Sie fertig sind
Ich wollte die Antwort von Ryan Forsyth erweitern, indem ich das hinzufüge. Wenn Sie eine standardmäßige UIAlertView-Ansicht hinzufügen, können Sie eine Ausnahme außerhalb des Bereichs erhalten, wenn Sie versuchen, auf ein Textfeld zuzugreifen, da keines vorhanden ist. Überprüfen Sie daher zuerst Ihren Ansichtsstil.
%Vor%Ohne den Kontext Ihrer Anwendung zu kennen, gilt Folgendes möglicherweise nicht - aber haben Sie die Richtlinien für die menschliche Benutzerschnittstelle von iOS ? Es klingt, als ob Sie besser eine Alternative zu UIAlertView finden könnten, wenn dies dem Benutzer oft angezeigt wird.
Nicht wirklich mit Ihrer Frage verbunden, aber ändern Sie den Standard-UIAlertView nicht, wenn Sie nicht möchten, dass Ihre App abgelehnt wird. Wenn ich nicht falsch liege, fügen Sie dem alertview Textfelder hinzu, nicht wahr? Wie eine Login-Ansicht. Sie sollten Ihre eigene Ansicht erstellen.
Also, in Bezug auf Ihre Frage, erstellen Sie Ihre Ansicht, legen Sie fest, dass die Schaltflächen deaktiviert sind, und delegieren Sie die UITextFields. Wenn
%Vor%heißt, aktivieren Sie diese Tasten.
Tags und Links iphone uialertview