我開發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