我开发iPad应用,我有一个按钮,我想,当点击按钮,一个子视图显示包含日期选择器,完成取消的UIDatePicker问题
问题是
- 的datepicked不会出现
- 当单击取消应用程序崩溃无法识别的选择发送到实例
我用下面的代码
-(IBAction)BirthDatePicker:(id)sender{
if(! ISPicker) {
if(self.interfaceOrientation == UIInterfaceOrientationPortrait || self.interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown)
{
pickerView = [[UIPickerView alloc]initWithFrame:CGRectMake(0,700, 768, 216)];
mytab = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 656, 768, 44)];
}
else {
pickerView = [[UIPickerView alloc]initWithFrame:CGRectMake(0,439, 1024, 216)];
mytab = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 395, 1024, 44)];
}
pickerView.alpha=0.0;
mytab.alpha=0.0;
//pickerView.showsSelectionIndicator = YES;
[self.view addSubview:pickerView];
[self.view bringSubviewToFront:pickerView];
mytab.tintColor=[UIColor blackColor];
UIBarButtonItem * bt1=[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(_Done)];
UIBarButtonItem * bt2=[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(_cancel)];
UIBarButtonItem * flx=[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
NSArray *arr=[[NSArray alloc] initWithObjects:flx,bt1,bt2,nil];
[mytab setItems:arr];
[self.view addSubview:mytab];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.3];
pickerView.alpha=1.0;
mytab.alpha=1.0;
[UIView commitAnimations];
[pickerView release];
[mytab release];
[bt1 release];
[flx release];
[arr release];
ISPicker = true ;
}
}
-(void)_Done{
ISPicker = false ;
NSDate * selected = [pickerView date];
NSString * date = [selected description];
DateLabel.text = date;
}
-(void)_Cancel{
ISPicker = false ;
//// Release the view
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.3];
pickerView.alpha=0.0;
mytab.alpha=0.0;
[UIView commitAnimations];
}
任何建议,请
就第二个问题而言,您需要使用'action:@selector(_Cancel)'而不是'action:@selector(_cancel)'。 – 2011-05-30 09:36:42
是的,这是一个敏感的案例谢谢,你有任何关于第一个问题的建议 – AMH 2011-05-30 09:48:43