О доступе контроллера представления программно - PullRequest
0 голосов
/ 25 сентября 2019

У меня в контроллере вида четыре кнопки (например, «Редактировать», «Макет», «Стиль», «Обрезать»). Я создал четыре класса для вышеуказанных кнопок. (Без раскадровки все находится в программном режиме) 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];

    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...