2012-05-24 64 views
0

我已經創建了一個UIDatePicker編程方式,並從一個方法,我將選定的值設置爲一個文本字段。但是價值並沒有進入文本框,並且選擇器沒有隱藏起來。誰能幫我?我的代碼是在這裏UIDatePicker不隱藏

datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 245, 320, 270)]; 
[self.view addSubview:datePicker]; 
datePicker.hidden=YES; 
[datePicker release]; 
datePicker.datePickerMode = UIDatePickerModeDate; 
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"yyyy:MMMM:dd"]; 
self.dobtxt.text = [outputFormatter stringFromDate:self.datePicker.date]; 
[outputFormatter release]; 
[DoneBtnDate setBackgroundImage: [UIImage imageNamed: @"OTdone.png"] forState:UIControlStateNormal]; 
PickerDoneviewDate=[[UIView alloc]initWithFrame:CGRectMake(0,210, 320, 35)]; 
PickerDoneviewDate.backgroundColor=[UIColor clearColor]; 
PickerDoneviewDate.backgroundColor=[UIColor colorWithPatternImage:[UIImage imageNamed:@"MFC_tab_01.png"]]; 
DoneBtnDate = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
[DoneBtnDate addTarget:self action:@selector(DatePickerDone:)forControlEvents:UIControlEventTouchDown]; 
DoneBtnDate.frame = CGRectMake(245,5, 70, 30); 
[PickerDoneviewDate addSubview:DoneBtnDate]; 
[self.view addSubview:PickerDoneviewDate]; 
PickerDoneviewDate.hidden=YES; 
} 

    -(void)DatePickerDone:(id)sender 
{ 
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"yyyy:MMMM:dd"]; 

self.dobtxt.text = [outputFormatter stringFromDate:self.datePicker.date]; 
[datePicker release]; 
[datePicker setHidden:TRUE]; 

PickerDoneviewDate.hidden=YES; 
[outputFormatter release]; 
} 

添加文本字段

dobtxt = [[UITextField alloc] initWithFrame:CGRectMake(150, 120, 133, 26)]; 
    dobtxt.borderStyle = UITextBorderStyleNone; 
    dobtxt.background=[UIImage imageNamed: @"textbox_small.png"]; 
    dobtxt.font = [UIFont fontWithName:@"Arial" size:13]; 
    dobtxt.delegate = self; 
    dobtxt.userInteractionEnabled=YES; 
    dobtxt.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 
    [scroll addSubview:dobtxt]; 
+0

add self.dobtxt.text = @「test」;在[scroll addSubview:dobtxt]之前;檢查測試是否在那裏。 –

+0

是的,它顯示該文本字段中的測試 – priya

+0

如何替換「self.dobtxt.text = [outputFormatter stringFromDate:self.datePicker.date];」到「self.dobtxt.text = @」test「」? –

回答

0

日期選擇器是屬性代碼,它會自動釋放。 Plz刪除

[datePicker release]; 


self.datePicker = [[[UIDatePicker alloc] initWithFrame:CGRectMake(0, 245, 320, 270)] autorelease]; 
[self.view addSubview:datePicker]; 
self.datePicker.hidden=YES; 
//[datePicker release]; 
datePicker.datePickerMode = UIDatePickerModeDate; 
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"yyyy:MMMM:dd"]; 
self.dobtxt.text = [outputFormatter stringFromDate:self.datePicker.date]; 
[outputFormatter release]; 
[DoneBtnDate setBackgroundImage: [UIImage imageNamed: @"OTdone.png"] forState:UIControlStateNormal]; 
PickerDoneviewDate=[[UIView alloc]initWithFrame:CGRectMake(0,210, 320, 35)]; 
PickerDoneviewDate.backgroundColor=[UIColor clearColor]; 
PickerDoneviewDate.backgroundColor=[UIColor colorWithPatternImage:[UIImage imageNamed:@"MFC_tab_01.png"]]; 
DoneBtnDate = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
[DoneBtnDate addTarget:self action:@selector(DatePickerDone:)forControlEvents:UIControlEventTouchDown]; 
DoneBtnDate.frame = CGRectMake(245,5, 70, 30); 
[PickerDoneviewDate addSubview:DoneBtnDate]; 
[self.view addSubview:PickerDoneviewDate]; 
self.PickerDoneviewDate.hidden=YES; 
} 

-(void)DatePickerDone:(id)sender 
{ 
NSDateFormatter *outputFormatter = [[NSDateFormatter alloc] init]; 
[outputFormatter setDateFormat:@"yyyy:MMMM:dd"]; 

self.dobtxt.text = [outputFormatter stringFromDate:self.datePicker.date]; 
//[datePicker release]; 
[datePicker setHidden:TRUE]; 

PickerDoneviewDate.hidden=YES; 
[outputFormatter release]; 
} 
+0

仍然沒有變化 – priya

+0

@priya你評論這兩個版本嗎? –

+0

yes評論兩行仍textfield是空的,datepicker不隱藏 – priya