Search code examples
iosuitextfielduipickerview

how to pop up datePicker when text filed click and disappear when editing done


i have view something like below

enter image description here date picker view is always there how can i make it appear pop up when Enter date is clicked and when i click on back ground then date picker should go down

i have just made date picker view customary but i dont know how to do this appear and disappear thing


Solution

  • Ok. Here is some sample code for your requirement with animation.

    - (void) showView
    {
        [self.view addSubview:yourDatePickerView];
            yourDatePickerView.frame = CGRectMake(0, -250, 320, 50);
            [UIView animateWithDuration:1.0
                             animations:^{
                                 yourDatePickerView.frame = CGRectMake(0, 152, 320, 260);
                             }];
    }
    

    And here is how to hide your DatePickerView

    - (void) hideView
    {
        [UIView animateWithDuration:0.5
                             animations:^{
                                 yourDatePickerView.frame = CGRectMake(0, -250, 320, 50);
                             } completion:^(BOOL finished) {
                                 [yourDatePickerView removeFromSuperview];
                             }];
    }
    
    - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
    {
        if(textField == yourDateTextField)
        {
             [self showView];
             return NO; // preventing keyboard from showing
        }
        return YES;
    }
    
    
    - (void)textFieldDidEndEditing:(UITextField *)textField
    {
        if(textField == yourDateTextField)
        {
             [self hideView];
        }
    }
    

    That's all you need.