Дважды нажмите, чтобы увеличить PDF UIScrollView? - PullRequest
0 голосов
/ 03 апреля 2012

У меня есть «PDF Viewer» в моем приложении.Я использую CGPDFDocumentRef и CGPDFPageRef, чтобы показать PDF.Для увеличения PDF я использую UIScrollView.

Я уже могу ущипнуть масштабирование в UIScrollView, но я также хочу иметь возможность дважды нажать, чтобы увеличить.

Двойное касание одним пальцем приводит вас к различным уровням в PDF, пока вы не нажмете maximumZoomLevel, а затем сможете дважды нажать двумя пальцами на minimumZoomLevel.

Мне не удалось найти в Интернете решение, которое бы показало вам это, в частности, поэтому я спрашиваю здесь.Как мне это сделать?

В viewDidLoad:

UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
    [doubleTap setNumberOfTapsRequired:2];
    [self.scrollView addGestureRecognizer:doubleTap];
    [doubleTap release];

Метод:

- (void)handleDoubleTap:(UIGestureRecognizer *)gestureRecognizer 
{      
    if(self.scrollView.zoomScale > self.scrollView.minimumZoomScale)
        [self.scrollView setZoomScale:self.scrollView.minimumZoomScale animated:YES]; 
    else 
        [self.scrollView setZoomScale:self.scrollView.maximumZoomScale animated:YES];
}

1 Ответ

0 голосов
/ 03 апреля 2012

Я думаю, что вы можете использовать UITapGestureRecognizer со свойством numberOfTapsRequired после этого в методе handle (который вы указываете при выделении / инициализации распознавателя) и использовать для использования – zoomToRect:animated: или – setZoomScale:animated: в представлении для увеличения.

Редактировать: отслеживать текущий уровень масштабирования, чтобы обратить эффект.

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