Добавление UIPinchGestureRecognizer в UIImagePickerController
Я пытаюсь добавить UIPinchGestureRecognizer в UIImagePickerController для увеличения или уменьшения масштаба передней камеры, но не смог вызвать метод внутри UIPinchGestureRecognizer (handlePinchWithGestureRecognizer). Я не получил никакой ошибки, но также не получил никакого взаимодействия.
Вот код, который я использую в viewDidAppear:
_imagePicker = [[UIImagePickerController alloc] init];
_imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
_imagePicker.cameraDevice = UIImagePickerControllerCameraDeviceFront;
_imagePicker.allowsEditing = YES;
_imagePicker.showsCameraControls = NO;
_imagePicker.navigationBarHidden = YES;
_imagePicker.view.userInteractionEnabled = YES;
_imagePicker.view.multipleTouchEnabled = YES;
_imagePicker.delegate = self;
UIPinchGestureRecognizer *pinchGestureRecognizer = pinchGestureRecognizer = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(handlePinchWithGestureRecognizer:)];
[_imagePicker.view addGestureRecognizer:pinchGestureRecognizer];
[self presentViewController:_imagePicker animated:NO completion:nil];
1 ответ
Прежде всего, я бы не стал добавлять средства распознавания жестов в представления контроллеров представления UIKit, которые не предназначены для подклассов. Вы не знаете наверняка, что там происходит, и как ваш распознаватель может мешать стандартным функциям представления.
Во-вторых, я попытался увеличить фронтальную камеру на моем iPhone, но это невозможно.
Если вы хотите получить видео с фронтальной камеры и увеличить его, вам нужно будет внедрить собственный контроллер, который принимает видеосеанс с фронтальной камеры и выполняет преобразования для масштабирования и т. Д.