SST
SST

Reputation: 2040

how to get input from UIAlertView?

I want take player name as input by using UIAlertView. Is it possible to add textField on the UIAlertView?

Upvotes: 12

Views: 10960

Answers (3)

Tustin2121
Tustin2121

Reputation: 2176

Since iOS 5, UIAlertView provides this: change the alertViewStyle property to one of the following:

UIAlertViewStylePlainTextInput (1 text field)
UIAlertViewStyleSecureTextInput (1 password field)
UIAlertViewStyleLoginAndPasswordInput (both a text field and password field)

Then use textFieldAtIndex: to get the text field you want. This way, you can even use the alertViewShouldEnableFirstOtherButton: delegate method to enable the button.

Upvotes: 31

Jim Dovey
Jim Dovey

Reputation: 11156

Yes, it's definitely possible, and it isn't a hack. You would need to subclass UIAlertView and place controls into it. Since it's a subclass, it will retain the same look & feel, etc.

For full details, see this tutorial by Jeff LaMarche (co-author of Beginning iPhone Development, from Apress).

Upvotes: 11

drewh
drewh

Reputation: 10167

Yes, but not without some hacking, see this previous question. You'd have to directly manipulate the UIAlertView's subviews and add a UITextField and then resize the UIAlertView's frame. You're better off creating your own view.

Upvotes: 1

Related Questions