У меня в контроллере вида четыре кнопки (например, «Редактировать», «Макет», «Стиль», «Обрезать»). Я создал четыре класса для вышеуказанных кнопок. (Без раскадровки все находится в программном режиме) 1. Редактор представления редактора 2. Контроллер представления представления 3.style view controller 4.crop view controller
Каждая кнопка может получить доступ к галерее изображений с помощью UIImage pickerController. Я могу передать и отобразить изображение в классе Edit view controller при нажатии кнопки Edit.
А такжея могу передать и отобразить изображение в контроллере макета, когда нажата кнопка макета.
Проблема заключается в том, что когда я коснулся кнопки макета, которая сначала перемещает класс Edit Controller, а затем перемещается в класс контроллера макета.
Iнеобходимо получить доступ к классу контроллера Layout, не видя класс контроллера Edit View.
Я использовал push viewController для доступа к другому классу.
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<UIImagePickerControllerInfoKey, id> *)info {
_imageView.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
[self dismissViewControllerAnimated:YES completion:nil];
MyEditorViewController *editor = [[MyEditorViewController alloc]init];
editor.myImage = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
[self.navigationController pushViewController:editor animated:YES];
MyStyleViewController *style = [[MyStyleViewController alloc]init];
style.myStyleImage = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
[self.navigationController pushViewController:style animated:YES];
}
// Кнопка стиля
_buttonFreeStyle = [[UIButton alloc]init];
[self.view addSubview:_buttonFreeStyle];
_buttonFreeStyle.translatesAutoresizingMaskIntoConstraints = NO;
[_buttonFreeStyle setTitle:@"Style" forState:UIControlStateNormal];
_buttonFreeStyle.backgroundColor = [UIColor greenColor];
[_buttonFreeStyle addTarget:self action:@selector(selectPhoto) forControlEvents:UIControlEventTouchUpInside];
- (void)selectPhoto {
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentViewController:picker animated:YES completion:NULL];
}