2009-04-22 5 views
0

Actuellement, je fais comme ceci:Quelle est la manière la plus efficace de déplacer un UIImageView?

CGRect frameRect = myUIImageView.frame; 
CGPoint rectPoint = frameRect.origin; 
CGFloat newXPos = rectPoint.x + 10.5f; 
landscape.frame = CGRectMake(newXPos, 0.0f, myUIImageView.frame.size.width, landscape.frame.size.height); 

sentir qu'il ya une solution plus efficace. Peut-être en utilisant le point central?

Répondre

2

Oui, vous pouvez déplacer le centre mais le code n'est pas significativement plus efficace. Vous pouvez optimiser le CGPoint et affecter le rect retour directement:

CGRect frameRect = myUIImageView.frame; 
frameRect.origin.x += 10.5f; 
landscape.frame = frameRect; 

Pour cette question, vous pouvez simplement ajuster le cadre directement, mais, l'optimisateur sera probablement le faire pour vous de toute façon.

De quoi n'êtes-vous pas particulièrement satisfait? Cela ne semble pas être une bonne cible à optimiser. Si l'affichage de votre application est mis à jour lentement, je suppose que vous faites quelque chose d'autre qui ne va pas.

+0

Merci. Oh non, tout va bien avec mon application. Je me demandais simplement si cela causerait des problèmes dans des situations où je déplace beaucoup plus de choses, car Apple dit que déplacer le point central est la voie à suivre. Bien que je n'aime pas penser au calcul des coordonnées du point de vue du centre. Je suppose que vous avez raison. Merci. – Thanks

+0

déplacer le centre n'est pas si différent parce que les vues ont une propriété de centre. –

-1

Je mets mes «trucs de déménagement» dans un bloc d'animation, et laisse l'iPhone bouger.

Questions connexes