1
\$\begingroup\$

I have a method that is moving a UIImageView called shootImg across the screen:

-(IBAction)shoot{
if (appDelegate.shootInt > 0) {
    if (direction == 1) {
            shootImg.center = CGPointMake(shootImg.center.x+1, shootImg.center.y);
            appDelegate.shootInt = appDelegate.shootInt - 1;
            shootLabel.text = [NSString stringWithFormat:@"%d", appDelegate.shootInt];
                }

This does seem to work. But it only moves shootImage 1 pixel. What I want to do is make it repeatedly move 1 pixel. I tried a while loop but that didn't seem to work. I'm not using cocos2d or anything like that and if you need to see more code just ask.

Thanks :)

\$\endgroup\$
  • \$\begingroup\$ It would be better if you showed us the context of where you're using the shoot method. \$\endgroup\$ – MichaelHouse Mar 30 '12 at 14:33
  • \$\begingroup\$ Well it's just a UIButton. What do you mean by context? \$\endgroup\$ – Will Mar 30 '12 at 14:58
  • \$\begingroup\$ I see now. The function above is just a response to a button press? \$\endgroup\$ – MichaelHouse Mar 30 '12 at 15:20
  • \$\begingroup\$ Yeah, and shootimg is a UIImageView \$\endgroup\$ – Will Mar 30 '12 at 15:33
2
\$\begingroup\$
[UIView beginAnimations:nil context:nil];
shootImg.center = CGPointMake(shootImg.center.x+appDelegate.shootInt, shootImg.center.y);
[UIView commitAnimations];

you can use this to animate the motion of ur image over 0.25 secs. But if you want to change the duration or any other animation properties then refer the doc.

http://developer.apple.com/library/ios/#documentation/uikit/reference/uiview_class/uiview/uiview.html

\$\endgroup\$
-1
\$\begingroup\$

How about making your own method in moving your object.. and inside your if statement:

a loop the calls this method: [self performSelector:@selector(methodname) withObject:nil afterDelay:1]; //this calls the method that moves your object every after 1 second.. as many times as you want..

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.