2012-01-10 8 views
3

UIAlertViewを使用して、ポップアップ上にテキストフィールドを表示しています。しかし、私が直面している問題は、UITextFieldのエントリを検証して制限することができないことです。つまり、3つの数値しか受け入れたくありません。iOSのUIAlertView内のUITextFieldへの入力の検証と制限方法

ここでは、私が実装したコードブロックを提供しています。

popup = [[UIAlertView alloc] initWithTitle:@"Please enter 3 numeric values" 
            message:@"\n\n" 
            delegate:self 
         cancelButtonTitle:@"Cancel" 
         otherButtonTitles:@"Ok", nil];   

txtFld = [[UITextField alloc] initWithFrame:CGRectMake(12, 50, 260, 25)]; 
[txtFld setBackgroundColor:[UIColor whiteColor]]; 
[txtFld setKeyboardType:UIKeyboardTypeNumberPad]; 
[popup addSubview:txtFld]; 

[popup show]; 

[txtFld becomeFirstResponder]; 

誰でもこの問題を解決するために私を助けることができますか?前もって感謝します。

+0

でそれを確認してください見ることができますか?私はそれが動作するはずだと思う –

+0

ありがとうthe69geeks。これはフィールドの値を検証するのに便利ですが、数値のみを入力するようにユーザーを制限したいのですが、どのように取得できますか。 – iLearner

+2

UIAlertViewにサブビューを手動で追加するか、自分の階層がプライベートで変更の対象となるため、制御しない他のビューを手動で追加するのは危険です。 iOS 5以上をターゲットにしている場合は、 'UIAlertViewStylePlainTextInput'などのテキスト入力をサポートする' UIAlertView'スタイルのいずれかを使用できます。 – Justin

答えて

2

私はあなたがtextfield.delegate =自己を設定していないことをあなたがUITextFieldDelegateプロトコルを使用してみました、あなたのコード

1

サブビューをUIAlertViewに追加するか、階層が非公開で変更される可能性があるため、管理しない他のビューに手動でサブビューを追加するのは危険です。 iOS 5以上をターゲットに設定している場合は、などのテキスト入力と検証をサポートするUIAlertViewスタイルのいずれかを使用できます。 UIAlertViewのドキュメントはスタイルのリストを提供し、this tutorialはその使用方法をより詳細に説明しています。ここ

関連する問題