2016-04-15 8 views
1

Erstellen Sie einen Scrollview, fügen Sie UIPagecontrol hinzu und laden Sie die Array-Werte erfolgreich. Legen Sie den Timer für das automatische Scrollen ein. Möchten Sie nach Abschluss des letzten Array-Wertes zeigen, dass der erste Array-Wert automatisch verschoben werden soll (Jetzt arbeitet mein Code wie reverse und bewegt sich zum ersten Array-Wert). Ich muss automatisch zuerst gehen. Hilf mir.Uipagecontrol zuletzt zum ersten Zug

Scroll Seite bewegen Code

- (void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
     int width; 
     width = ScrollViewPage.frame.size.width; 
     float xPos = scrollView.contentOffset.x+10; 
     pageControl.currentPage = (int)xPos/width; 
} 

/// In Timer für Bewegung automatisch tis Code

- (void)loadNextController 
{ 
    pageControl.currentPage = (pageControl.currentPage+1)%self->pageControllMutableImageArray.count; 
    [ScrollViewPage setContentOffset:CGPointMake(pageControl.currentPage * self.view.bounds.size.width, 0) animated:YES]; 
} 

/// UIpagecontrol Punkttaste klicken Zielaktionscode

- (IBAction)pageTurn:(id)sender 
{ 
    NSUInteger page = pageControl.currentPage; 
    CGRect frame = ScrollViewPage.frame; 
    frame.origin.x = frame.size.width * page; 
    frame.origin.y = 0; 
    [ScrollViewPage scrollRectToVisible:frame animated:YES]; 

} 

Wie es in meinem Code möglich ist. Helfen Sie mir, danke Fortschritt.

+0

Das auftretende Problem ist nicht klar. Hast du einen Fehler bekommen? Was hast du versucht? –

+0

Ich dot bekommen irgendeinen Fehler. Ich möchte den letzten Array-Wert von uipagecontrol reach anzeigen und mich automatisch zum ersten Array-Wert bewegen. nicht umgekehrt. – saravanar

+0

Das Entschlüsseln Ihres Englisch scheint hier das Problem zu sein ... Versuchen Sie zu fragen, wie Sie ein endloses Scrollen mit N Bildern simulieren, so dass Sie beim Scrollen von der letzten Seite zur ersten Seite die gleiche Animation beibehalten von rechts nach links statt der umgekehrten Animation, die einfach zur ersten Seite zurückscrollt? Oder mit anderen Worten, ist Ihr Problem, wie der Übergang in der Bildlaufansicht von der letzten auf die erste Seite funktioniert? –

Antwort

0

Sie so etwas tun kann,

- (void)loadNextController 
{ 
//put if statement here to check whether it is page object something like, 

//have aasume that your first page number is 0. so take count - 1 in if 

    if(pageControl.currentPage == (pageControllMutableImageArray.count - 1)){ 
    //start from initial. set current page = 0 and contentoffset of first page 

    } 
    else { 

    // your code for next page may be like, 

    pageControl.currentPage = (pageControl.currentPage+1)%self->pageControllMutableImageArray.count; 
[ScrollViewPage setContentOffset:CGPointMake(pageControl.currentPage * self.view.bounds.size.width, 0) animated:YES]; 
    } 

} 

Hope this helfen. :)

Update 2:

Sie Inhalte Offset der ersten Seite wie einstellen:

CGPoint newOffset = CGPointMake(0, 0); 
    [self.standardScrollView setContentOffset:newOffset animated:YES]; 
+0

Wie kann ich Inhaltoffset der ersten Seite einstellen .. Help me .. – saravanar

+0

Nach dem letzten Objekt des Arrays zu scrollen, wenn der Uipageview scrollen Sie auch auf das erste Objekt des Arrays ... kann Hilfe möglich sein .. – saravanar

+0

ich habe ans aktualisiert prüfen Sie. Auf diese Weise können Sie den Inhaltsoffset überprüfen. – Lion