如何制作弹跳球应用

时间:2011-04-12 12:02:25

标签: iphone ios4

我一直关注http://www.bit-101.com/blog/?p=1798教程制作弹跳球应用。 但我想做的是制作20-30个球,可以在用户触摸的iphone屏幕上任意位置拖动,也可以放在屏幕的任何地方。所以任何人都可以建议我这个 - 如何在我这样做手机不使用cocos2d请帮帮我或给我一些链接或有用的信息任何帮助将不胜感激.......

2 个答案:

答案 0 :(得分:0)

当您使用上述代码时,您可以编写touchesMoved方法来处理ballView的位置。

- (void)touchesMoved: (NSSet *)touches withEvent:(UIEvent *)event {
   UITouch *anyTouch = [touches anyObject];
   [self setCenter:[anyTouch locationInView:[self superView]];
}

试试这个。

或此更新的

- (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{


    if ([touches count] == 1) {
        UITouch *newTouch = [[touches anyObject] locationInView:[self superview]]; 
        UITouch *lastTouch = [[touches anyObject] previousLocationInView: [self superview]];
        NSLog(@"xxxxxggdfgdfgfdgdfg%f",newTouch.x);
        NSLog(@"yyyyyyggdfgdfgfdgdfg%f",newTouch.y);
        xDif = newTouch.x - lastTouch.x; 
        yDif = newTouch.y - lastTouch.y;


        }
        CGAffineTransform translate = CGAffineTransformMakeTranslation(xDif, yDif);
        [self setTransform: CGAffineTransformConcat([self transform], translate)]; 
    } 

答案 1 :(得分:0)

你可以使用计时器{

pos = CGPointMake(7.0,14.0);     timer = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(onTimer)userInfo:nil repeats:YES]; }

并使用选择器

调用该方法

- (无效)的OnTimer {     image.center = CGPointMake(image.center.x + pos.x,image.center.y + pos.y);     if(image.center.x> 320 || image.center.x< 0)         pos.x = -pos.x;

    if (image.center.y>460 || image.center <0 ) 
    pos.y=-pos.y;

}

由此你可以在iphone屏幕上移动图像并使用触摸移动来保存该图像