2010-09-03 5 views
0

Je dois construire une vue défilante (avec 10 éléments par exemple) qui peut être défilée en continu (avec pagination activée). En d'autres termes, lorsque vous continuez à défiler vers la droite, vous voyez l'élément que vous avez commencé une fois pour arriver à la fin, et il ne cesse de boucler.Objectif C (iphone/ipad) - Meilleure pratique de codage du carrousel

Je suis à la recherche de recommandations sur la façon d'aborder cette question. Je vais recevoir un tableau d'images. Je peux les mettre l'un à côté de l'autre sans problème. Ma principale préoccupation est comment/quand déplacer les images afin qu'elles continuent à apparaître dans une boucle que vous faites défiler. Merci!

Répondre

0

Utilisez le délégué -(void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView; pour savoir quand quelqu'un se déplace dans votre vue déroulante.

Lorsque vous arrivez à la dernière page, vous devez déplacer la première vue de l'image dans la vue déroulante jusqu'à la fin. à savoir:

for(UIImageView *image in myscrollview){ 
    if(image.frame.origin.x == 0){ 
     // move to the end... 
    } 
    else{ 
     // move your image a scroll view's width to the left... 
    } 
} 

évidemment, il sera beaucoup plus compliqué que cela, vous devrez travailler de quelle manière l'utilisateur est le défilement et le tri comme ça, mais cela vous donne une base pour commencer. :)

1

Ajouter la première image comme dernière image. Tout comme vous vous déplacez plus loin à droite de la dernière image, sautez à la première.

Et vice versa bien sûr.

Questions connexes