2011-08-30 6 views
0

Selon le résultat d'une entrée utilisateur, je dois montrer de 0 à n nombre d'images [lignes dans un fond de style graphique] dans une vue , évolution sur l'axe x,comment placer différents UIImages

le problème est que je ne sais pas avant la main combien d'images vont être nécessaires pour dessiner,

donc je ne peux pas créer tous les UIImageViews nécessaires [ni codage élégant]

ici un exemple de ce que je veux dire

UIImageView *img = [[[UIImageView alloc] initWithFrame:CGRectMake(12, 30, 12, 200)] autorelease]; 
[img setImage:[UIImage imageNamed:@"line.png"]]; 
img.opaque = YES; 
[self.view addSubview:img]; 
//[img release]; 


UIImageView *img2 = [[[UIImageView alloc] initWithFrame:CGRectMake(102, 30, 12, 200)] autorelease]; 
[img2 setImage:[UIImage imageNamed:@"line.png"]]; 
img2.opaque = YES; 
[self.view addSubview:img2]; 

UIImageView *img3 = [[[UIImageView alloc] initWithFrame:CGRectMake(202, 30, 12, 200)] autorelease]; 
[img3 setImage:[UIImage imageNamed:@"line.png"]]; 
img3.opaque = YES; 
[self.view addSubview:img3]; 


UIImageView *img4 = [[[UIImageView alloc] initWithFrame:CGRectMake(302, 30, 12, 200)] autorelease]; 
[img4 setImage:[UIImage imageNamed:@"line.png"]]; 
img4.opaque = YES; 
[self.view addSubview:img4]; 

alors comment y parvenir?

merci beaucoup!

Répondre

0

Si vous avez à heighthauteur de votre point de vue, que:

for (int x=2; x<height; x+=100) 
{ 
    UIImageView *img = [[UIImageView alloc] initWithFrame:CGRectMake(x, 30, 12, 200)]; 
    [img setImage:[UIImage imageNamed:@"line.png"]]; 
    img.opaque = YES; 
    [self.view addSubview:img]; 
    [img release]; 
} 
+0

Vous avez défini img à AutoRelease ** et ** libéré manuellement. –

+0

Merci @DaveAlbert! Édité – Nekto

Questions connexes