2010-07-15 5 views
0

J'essaie de placer les icônes/images horizontalement dans une vue qui est destinée à montrer des détails. Le nombre maximum d'images par rangée est de 6 pièces et je veux avoir un mécanisme qui gère les sauts de ligne ou similaire automatiquement. Je soupçonne que c'est une cellule personnalisée qui résout cela?Quelle est la meilleure approche programmatique pour afficher des images/icônes horizontalement?

J'ai essayé le code suivant ci-dessous, mais les images ci-dessus en ajoutent une autre lorsque je recharge la vue. De plus, la hauteur de la cellule n'est pas ajustée par la vue que le code a renvoyé.

-(UIImageView *)fillView{ 
collage = nil; 
collage = [[[UIImageView alloc] initWithFrame:CGRectMake(11, 7, 0, 0)] autorelease]; 

int rowCounter = 0; 
int colCounter = 0; 
int nrOfPictures = [paymentImages count]; 

    //max 6 images per row 
while (nrOfPictures > 0) { 
    while (colCounter <= 6 && nrOfPictures != 0) { 
     UIImageView *iv = [[UIImageView alloc] initWithImage:[paymentImages objectAtIndex:nrOfPictures-1]]; 
     CGRect frame = iv.frame; 
     frame.origin.x = (frame.size.width + 4) * colCounter; 
     frame.origin.y = (frame.size.height + 4) * rowCounter; 
     iv.frame = frame; 
     [collage addSubview:iv]; 
     [iv release]; 

     colCounter++; 
     nrOfPictures--; 
     if (colCounter > 6) { 
      colCounter = 0; 
      rowCounter++; 
     } 
    } 
} 
return collage; 

}

quelqu'un peut me diriger dans la bonne direction?

Cordialement // Christoffer

Répondre

Questions connexes