2010-09-22 5 views
3

J'ai un UIImageView, maintenant je veux répéter cette image, qu'il apparaît toujours à nouveau lorsque vous faites défiler vers la gauche ou la droite.répétez une image lors du défilement sur l'iphone

Petit exemple:

alt text

est-ce possible? il devrait ressembler à une boucle infinie

+0

Voir http://stackoverflow.com/questions/1710781/uiscrollview-infinite-scroll et http://stackoverflow.com/questions/1493950/uiscrollview-any-thoughts-on-implementing-infinite-scroll-zoom. –

Répondre

1

Le mot "infini" exclut un UISCrollView ou un CATiledLayer, évidemment.

je dirais que la meilleure façon d'y parvenir est d'initialiser assez UIImageView s pour remplir complètement votre écran (ou zone défilement), plus un, et mettre en œuvre votre propre traînage/système de défilement et de recycler les UIImageView s comme ils vont d'un côté de l'écran pour réapparaître de l'autre côté. Parce que tous les UIImageView s sont la même image, vous ne devriez jamais avoir à vous soucier de la gestion de la mémoire/cache.

2

Si vous ne se soucient pas de la performance, vous pouvez utiliser un « modèle d'image »:

UIView * backgroundView = [[[UIView alloc] initWithFrame:frame] autorelease]; 
backgroundView.backgroundColor = [UIColor colorWithPatternImage:repeatingImage]; 

Je pense qu'il tire juste au contexte de la vue, mais, ce qui signifie qu'il ne peut pas être " infini "et la performance pourrait être un peu lente.

+0

l'image couleur de fond peut-elle être zoomée? – choise

Questions connexes