J'ai chargé un pdf dans un scrollview, et je voudrais aller directement à la page suivante sans faire défiler l'animation.

CGRect scrollViewRect = CGRectInset(viewRect, -scrollViewOutset, 0.0f);

theScrollView = [[UIScrollView alloc] initWithFrame:scrollViewRect]; // All
theScrollView.autoresizesSubviews = NO;
theScrollView.contentMode = UIViewContentModeRedraw;
theScrollView.showsHorizontalScrollIndicator = NO; 
theScrollView.showsVerticalScrollIndicator = NO;
theScrollView.scrollsToTop = NO;
theScrollView.delaysContentTouches = NO;
theScrollView.pagingEnabled = YES;
theScrollView.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);
theScrollView.backgroundColor = [UIColor clearColor];
theScrollView.delegate = self;

[self.view addSubview:theScrollView];

C'est possible ?

0
ΩlostA 17 janv. 2017 à 14:57

2 réponses

Meilleure réponse

Vous devez utiliser la méthode ci-dessous pour sauter sur le décalage direct de votre page suivante par la méthode ci-dessous.

[objUIScrollView setContentOffset:CGPointMake(YOUR_X, YOUR_Y) animated:NO]

animated = NO;

Si vous chargez un PDF via WebView, vous devez suivre le code ci-dessous:

webview.scrollView.contentOffset = CGPointMake(YOUR_X, YOUR_Y);

Remarque: utilisez ce code ci-dessus dans votre page du bouton suivant ou après le chargement WebView correctement peut être dans la méthode ci-dessous.

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
}

J'espère que cela fonctionnera comme prévu.

1
CodeChanger 17 janv. 2017 à 13:07

Bien sûr, utilisez simplement:

[theScrollView scrollRectToVisible:CGRectMake(0.0f, 0.0f, 0.0f, 0.0f) animated:NO];

Ou

[theScrollView setContentOffset:CGPointMake(0.0f, 0.0f) animated:NO];

Et changez le CGPoint ou CGRect pour le décalage de la page de votre choix.

1
Ramon 17 janv. 2017 à 12:11