2012-05-14 3 views
16

मैं इस समय इस UIAlertView उपयोग कर रहा हूँ एक लॉगिन पॉपअप करने के लिए,UIAlertView: UIAlertViewStyleSecureTextInput: संख्यात्मक कुंजीपटल

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Restricted" 
               message:@"Please Enter Code to Enable Fields" 
               delegate:self 
             cancelButtonTitle:@"Cancel" 
             otherButtonTitles:@"Login" 
         , nil]; 
alert.alertViewStyle = UIAlertViewStyleSecureTextInput; 

[alert show]; 

हालांकि मैं पाठ इनपुट चाहते हैं एक अंकीय बजाय कुंजीपटल नियमित कीबोर्ड होने की

वहाँ एक आसान तरीका यह करने के लिए है, या मैं एक कस्टम UIAleartView

उत्तर

51

बनाने में देखना आप UIAlertView के मैदान के कुंजीपटल प्रकार बदलने के लिए इस कोशिश कर सकते हैं की क्या ज़रूरत है:

[[alert textFieldAtIndex:0] setDelegate:self]; 
[[alert textFieldAtIndex:0] setKeyboardType:UIKeyboardTypeNumberPad]; 
[[alert textFieldAtIndex:0] becomeFirstResponder]; 
+0

ऐड अपने * ज फ़ाइल –

4

कूल जवाब लेकिन आईओएस 7 के लिए मैं एक छोटे से अनुकूलन

alert.alertViewStyle = UIAlertViewStylePlainTextInput; 
[alert show]; 
[[alert textFieldAtIndex:0] setDelegate:self]; 
[[alert textFieldAtIndex:0] resignFirstResponder]; 
[[alert textFieldAtIndex:0] setKeyboardType:UIKeyboardTypePhonePad]; 
[[alert textFieldAtIndex:0] becomeFirstResponder]; 
+0

बुला '[चेतावनी शो] से पहले कीबोर्ड बदलने के लिए है,' कम करना चाहिए इस्तीफा देने और पहले उत्तरदाता बनने की जरूरत है। – rebello95

4
UIAlertView *alertView1 = [[UIAlertView alloc] initWithTitle:@"Enter File Number" message:@"" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Ok", nil]; 
     alertView1.alertViewStyle = UIKeyboardTypePhonePad; 
     myTextField = [alertView1 textFieldAtIndex:0]; 
     myTextField.keyboardType=UIKeyboardTypeNumberPad; 
     [alertView1 setTag:3]; 
     [alertView1 show];