2013-07-30 3 views
0

나는 텍스트 필드를 가지고 있는데, 사용자가 datepicker가 표시 할 해당 텍스트 필드를 클릭 할 때를 설정했습니다. 그러나 문제는 날짜 선택 도구가 숨어 있지 않다는 것입니다. 아래는 내 코드입니다.날짜 선택 도구가 숨어 있지 않음

- (IBAction) ac{ 
    NSDateFormatter *df = [[NSDateFormatter alloc] init]; 
    df.dateStyle = NSDateFormatterMediumStyle; 
    date.text = [NSString stringWithFormat:@"%@", 
         [df stringFromDate:[NSDate date]]]; 


    datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 250, 0, 0)]; 
    datePicker.datePickerMode = UIDatePickerModeDate; 
    //datePicker.hidden = NO; 
    datePicker.date = [NSDate date]; 
    date.inputView = datePicker; 

    [datePicker addTarget:self 
        action:@selector(LabelChange:) 
     forControlEvents:UIControlEventValueChanged]; 
    [self.view addSubview:datePicker]; 


} 
- (void)LabelChange:(id)sender{ 
    NSDateFormatter *df = [[NSDateFormatter alloc] init]; 
    df.dateStyle = NSDateFormatterMediumStyle; 
    date.text = [NSString stringWithFormat:@"%@", 
         [df stringFromDate:datePicker.date]]; 

} 

-(IBAction)hidekey{ 

    [title resignFirstResponder]; 
    [date resignFirstResponder]; 
    [disc resignFirstResponder]; 
    [place resignFirstResponder]; 
    //datePicker.hidden = YES; 
    [datePicker setHidden:YES]; 
} 

답변

1

숨기기 대신에 제거하십시오.

[datePicker removeFromSuperview]; 

또 다른 옵션

변경처럼 방법 :

- (IBAction) ac 
{ 
    NSDateFormatter *df = [[NSDateFormatter alloc] init]; 
    df.dateStyle = NSDateFormatterMediumStyle; 
    date.text = [NSString stringWithFormat:@"%@", 
         [df stringFromDate:[NSDate date]]]; 

    datePicker = nil; 
    datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 250, 0, 0)]; 
    datePicker.datePickerMode = UIDatePickerModeDate; 
    //datePicker.hidden = NO; 
    datePicker.date = [NSDate date]; 
    date.inputView = datePicker; 

    [datePicker addTarget:self 
        action:@selector(LabelChange:) 
     forControlEvents:UIControlEventValueChanged]; 
    [date setInputView:datePicker]; 

} 

-(IBAction)hidekey 
{ 

    [title resignFirstResponder]; 
    [date resignFirstResponder]; 
    [disc resignFirstResponder]; 
    [place resignFirstResponder]; 
    datePicker = nil; 
} 
+0

이 여전히 hideKey 방법은 – Nasir

+0

있을 때 배경에 사용자가 클릭 . –

+0

를 호출되어 있는지 확인 @Nasir 같은 문제 각하 – Nasir

관련 문제