У меня проблема при отклонении модального представления:
У меня есть вкладка с пятью вкладками.
Я на четвертой вкладке, и я отображаю модальное представление.
Когда я отклоняю это. Я перехожу на первую вкладку, но хочу остаться на четвертой.
Чтобы показать модальный режим, я вызываю этот метод в родительском контроллере:
[self presentModalViewController:controller animated:YES];
Чтобы скрыть модал, я вызываю этот метод в родительском контроллере:
[self dismissModalViewControllerAnimated:YES];
Я уже пытаюсь вызывать методы self.tabBarController / self.navigationController вместо метода self, но это та же проблема.
У кого-то есть идея?
EDIT:
Я вызываю методы в контроллере четвертой вкладки.
Это контекст:
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
UIImagePickerController *imgPicker = [[UIImagePickerController alloc] init];
imgPicker.allowsEditing = NO;
imgPicker.delegate = self;
switch (buttonIndex) {
case 0: {
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:kMobiglissFromPicker];
imgPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentModalViewController:imgPicker animated:YES];
break;
}
case 1: {
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:kMobiglissFromPicker];
imgPicker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentModalViewController:imgPicker animated:YES];
}
break;
}
}
}
- (void)imagePickerController:(UIImagePickerController *)imgPicker didFinishPickingMediaWithInfo:(NSDictionary *)info {
UIImage *origin = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
UIImage *photo = [origin thumbnailImage:280
transparentBorder:0.0
cornerRadius:0.0
interpolationQuality:kCGInterpolationHigh];
[icon replaceImageWithImage:photo];
[serverProxy updateProfileAvatar:photo];
[self dismissModalViewControllerAnimated:YES];
imgPicker.delegate = nil;
}
- (IBAction)editAvatar:(id)sender {
NSString *camera = [UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera] ? [WPLanguage get:@"SignupPhotosheetCamera"] : nil;
UIActionSheet *photoSheet = [[UIActionSheet alloc] initWithTitle:[WPLanguage get:@"SignupPhotosheetTitle"]
delegate:self
cancelButtonTitle:[WPLanguage get:@"CANCEL"]
destructiveButtonTitle:nil
otherButtonTitles:[WPLanguage get:@"SignupPhotosheetGallery"], camera, nil];
[photoSheet showInView:self.view];
}