How to reject a UIActionSheet using the Close button and avoid a crash?

I read in another post ( how to reject an action sheet ) that I can use

[actionSheet dismissWithClickedButtonIndex:0 animated:YES]; 

to reject the uiaewsheet by the close button, as defined in:

 UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:nil delegate:nil cancelButtonTitle:nil destructiveButtonTitle:nil otherButtonTitles:nil]; [actionSheet setActionSheetStyle:UIActionSheetStyleBlackTranslucent]; CGRect pickerFrame = CGRectMake(0, 40, 0, 0); UIPickerView *pickerView = [[UIPickerView alloc] initWithFrame:pickerFrame]; pickerView.showsSelectionIndicator = YES; pickerView.dataSource = self; pickerView.delegate = self; [actionSheet addSubview:pickerView]; [pickerView release]; 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]; [actionSheet addSubview:closeButton]; [actionSheet dismissWithClickedButtonIndex:0 animated:YES]; [closeButton release]; [actionSheet showInView:[[UIApplication sharedApplication] keyWindow]]; [actionSheet setBounds:CGRectMake(0, 0, 320, 485)]; 

However, I am not sure where to place this line, assuming this will solve my problem:

 [actionSheet dismissWithClickedButtonIndex:0 animated:YES]; 

In addition, the application shuts down when I click the close button, with the error message "PROGRAM RECEIVED ERROR MESSAGE SIGBRT". I assume that my two problems are related. Any help there?

+6
source share
1 answer

Just implement dismissActionSheet and post a dismissal message there.

The dismissActionSheet method will look something like this:

 -(void)dismissActionSheet { [sheet dismissWithClickedButtonIndex:0 animated:YES]; } 
+10
source

Source: https://habr.com/ru/post/903057/


All Articles