2010-12-11 35 views
1

J'essaye de mettre à jour chaque cadre pour un UIButton alloué quand l'orientation du dispositif est mise à jour. À l'heure actuelle, j'ai une boucle for qui est censée vérifier chaque UIButton dans la vue et mettre à jour le cadre de l'UIButton. La boucle for ne fonctionne pas, quelqu'un peut-il me dire pourquoi?Comment changer le cadre pour chaque UIButton dans la vue

Merci d'avance!

for(UIView* view in theTable.subviews) { 
    if([view isMemberOfClass:[UIButton class]]) { 
     NSLog(@"UIButton found"); 
     view.frame = CGRectMake(430, 10, 23, 24); 
    } 
} 

Répondre

2

Essayez d'appeler [view setNeedsDisplay]; après avoir modifié le cadre. De la documentation:

Vous pouvez utiliser cette méthode ou setNeedsDisplayInRect: d'informer le système qui doivent être redessinées pour le contenu de votre vue. Cette méthode donne une note de la demande et renvoie immédiatement. La vue n'est pas réellement redessinée jusqu'au prochain cycle de dessin, à quel point toutes les vues invalidées sont mises à jour.