2011-11-12 89 views

回答

6

有一个名为

-(void)textFieldDidBeginEditing:(UITextField*)textField 
{ 
[textField resignFirstResponder]; 
in this you have to do this 
pick = [[UIDatePicker alloc] init]; 
[pick setFrame:CGRectMake(0,200,320,120)]; 
[pick addTarget:self action:@selector(done) forControlEvents:UIControlEventValueChanged] 
[self.view addSubview:pick]; 
} 

-(void)done 
{ 
[textfield setText:pick.date]; 
} 

释放的dealloc

+0

不要忘记发布选择。 – jbat100

+0

谢谢你杀手。但是我得到错误:使用未声明的标识符'pick'。 – filou

+0

UIDatePicker *选择在.h文件中写入 – Tendulkar

1

为了增加杀手的回答挑一个委托方法,我想你应该实现

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField 

代替并返回NO。然后显示日期选择器并根据选择器选择填充UITextField文本。

+0

谢谢jbat :)但我得到的错误:使用未声明的标识符'选择'。 – filou

+0

只需创建一个ivar(实例变量),在头中声明pick(UIDatePicker * pick;)(并创建一个retain属性)。这样你可以保留对它的引用,当用户完成时从视图中删除它。 – jbat100

+0

好的。但是现在在 - (void)中完成了一个错误:发送'NSDate *'到类型为'NSString *'的参数的指针类型不兼容。 – filou