0

コードを見直してください

  -(IBAction)showDateSheet{
dateSheet=[[UIActionSheet alloc]initWithTitle:@"Select Test Date" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:nil];
datePicker=[[UIDatePicker alloc]init];
[datePicker addTarget:self action:@selector(changeDateInLabel:) forControlEvents:UIControlEventValueChanged];
dateSheet.delegate=self;
//[dateSheet setFrame:CGRectMake(0, 117, 320, 383)];
datePicker.datePickerMode=UIDatePickerModeDate;
CGRect pickerRect=datePicker.bounds;
pickerRect.origin.y=-100;
datePicker.bounds=pickerRect;
[dateSheet addSubview:datePicker];
[dateSheet showInView:self.view];
[dateSheet setBounds:CGRectMake(0.0f, 0.0f, 320, 500)];

//[datePicker release];
//[dateSheet release];

   }

上記のコードを使用すると、キャンセルボタンをクリックできません。キャンセルボタンをタップしても何も起こりません

4

2 に答える 2

0

このようなアクションシートにボタンを追加する必要があります...

UISegmentedControl *closeButton = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObject:@"Close"]];
closeButton.momentary = YES; 
closeButton.frame = CGRectMake(260, 7.0f, 50.0f, 30.0f);
closeButton.segmentedControlStyle = UISegmentedControlStyleBar;
closeButton.tintColor = [UIColor blackColor];
[closeButton addTarget:self action:@selector(dismissActionSheet:) forControlEvents:UIControlEventValueChanged];
[dateSheet addSubview:closeButton];
[closeButton release];

これは、呼び出す前に行う必要があります[dateSheet showInView:self.view];

次に、セレクターでこれを書くだけです..

[actionSheet dismissWithClickedButtonIndex:0 animated:YES]
于 2012-04-10T19:37:36.333 に答える