The figurative image of your question shows that the application uses UIToolbar, and I assume that when you click on the date text box, the datepicker button appears with the done button. And for this in the file some.h
/*****keyboard Done button ***/ #import <UIKit/UIKit.h> @interface ViewController : UIViewController { IBOutlet UIDatePicker *picker1; IBOutlet UITextField *txtFld; } @property (nonatomic, retain) UIToolbar *keyboardToolbar; @end
in some.m file
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; picker1=[[UIDatePicker alloc] initWithFrame:CGRectMake(0, 0, 320, 300)];//frames are just for demo [txtFld setInputView:picker1]; } - (void)keyboardWillShow:(NSNotification *)notification { if(keyboardToolbar == nil) { keyboardToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 410, 320, 44)] ; [keyboardToolbar setBarStyle:UIBarStyleBlackTranslucent]; [keyboardToolbar sizeToFit]; [UIView beginAnimations:nil context:NULL]; [UIView setAnimationDuration:0.4]; UIBarButtonItem *flexButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil]; UIBarButtonItem *doneButton1 =[[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(resignKeyboard)]; NSArray *itemsArray = [NSArray arrayWithObjects:flexButton,doneButton1, nil]; [keyboardToolbar setItems:itemsArray]; [txtFld setInputAccessoryView:keyboardToolbar]; [self.view addSubview:keyboardToolbar]; [UIView commitAnimations]; } } -(void)resignKeyboard { [keyboardToolbar removeFromSuperview]; [txtFld resignFirstResponder]; ///do nescessary date calculation here }

iSankha007
source share