In an iPhone app, I am having a UITextField
which needs input as numerics, so I am passing the Keyboard type as UIKeyboardTypeNumberPad
. It works but there is no return or Done button, so how can I hide the keyboard.
Code for reference is:
textDriverAge.delegate=self;
textDriverAge.keyboardType=UIKeyboardTypeNumberPad;
textDriverAge.clearButtonMode = UITextFieldViewModeWhileEditing;
[textDriverAge setReturnKeyType:UIReturnKeyDone];// UIReturnKeyNext];
textDriverAge.enablesReturnKeyAutomatically=TRUE;
I have handled the UITextfield
events like:
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
if(textDriverAge == textField)
{
[textDriverAge resignFirstResponder];
//[tglDropInDropOff becomeFirstResponder];
}
}
Guide me how to hide the keyboard.
you can use two types
Touch Method
.
use this link iOS dismissing keyboard, UILabel malfunction
in another choice add the UIToolbar
in your view Controller.
- (void)viewDidLoad
{
[super viewDidLoad];
UIToolbar *numberToolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 50)];
numberToolbar.items = [NSArray arrayWithObjects:
[[UIBarButtonItem alloc]initWithTitle:@"Cancel" style:UIBarButtonItemStyleBordered target:self action:@selector(cancelNumberPad:)],
[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil],
[[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(doneWithNumberPad:)],
nil];
yourtextField.inputAccessoryView = numberToolbar;
}
- (IBAction)cancelNumberPad:(UITextField*)textField
{
[yourtextField resignFirstResponder];
yourtextField.text=@"";
}
- (IBAction)doneWithNumberPad:(UITextField*)textField
{
[yourtextField resignFirstResponder];
}