- (void)viewDidLoad {
[super viewDidLoad];
self.ballArray = [[NSMutableArray alloc] init];
[ballArray release];
for(int i =0;i<8;i++)
{
BubbleView *bubble = [[BubbleView alloc] initWithFrame:CGRectMake(5+i*30
, i*60+5, 50,50)];
bubble.xSpeed = arc4random()%5+1;
bubble.ySpeed = arc4random()%5+1;
if(i%2 ==0)
{
bubble.image = [UIImage imageNamed:@"qipao1.png"];
}
else if(i%2 ==1)
{
bubble.image = [UIImage imageNamed:@"qipao2.png"];
}
[self.view addSubview:bubble];
[ballArray addObject:bubble];
}
[NSTimer scheduledTimerWithTimeInterval:0.03 target:self selector:@selector(fresh) userInfo:nil repeats:YES];
}
-(void)fresh
{
for(int i = 0;i<ballArray.count;i++)
{
BubbleView *bubble = [ballArray objectAtIndex:i];
for(int j = i+1;j<ballArray.count;j++)
{
BubbleView *bubble2 = [ballArray objectAtIndex:j];
if(sqrt((bubble2.center.x-bubble.center.x)*(bubble2.center.x-bubble.center.x)+
(bubble2.center.y-bubble.center.y)*(bubble2.center.y-bubble.center.y))
<=50)
{
int tempx = 0;
int tempy = 0;
tempx = bubble.xSpeed;
bubble.xSpeed = bubble2.xSpeed;
bubble2.xSpeed =tempx;
tempy = bubble.ySpeed;
bubble.ySpeed = bubble2.ySpeed;
bubble2.ySpeed =tempy;
CGPoint center = CGPointMake(bubble.center.x+bubble.xSpeed,bubble.center.y+bubble.ySpeed);
bubble.center = center;
center = CGPointMake(bubble2.center.x+bubble2.xSpeed,bubble2.center.y+bubble2.ySpeed);
bubble2.center = center;
}
}
if((bubble.frame.origin.x + bubble.frame.size.width >= 320 && bubble.xSpeed >0)
||(bubble.frame.origin.x <=0 && bubble.xSpeed < 0))
{
bubble.xSpeed = -bubble.xSpeed;
}
if((bubble.frame.origin.y + bubble.frame.size.height >= 460 && bubble.ySpeed >0)
||(bubble.frame.origin.y <=0 && bubble.ySpeed < 0 ))
{
bubble.ySpeed = -bubble.ySpeed;
}
CGPoint center = CGPointMake(bubble.center.x+bubble.xSpeed,bubble.center.y+bubble.ySpeed);
bubble.center = center;
}
}
[super viewDidLoad];
self.ballArray = [[NSMutableArray alloc] init];
[ballArray release];
for(int i =0;i<8;i++)
{
BubbleView *bubble = [[BubbleView alloc] initWithFrame:CGRectMake(5+i*30
, i*60+5, 50,50)];
bubble.xSpeed = arc4random()%5+1;
bubble.ySpeed = arc4random()%5+1;
if(i%2 ==0)
{
bubble.image = [UIImage imageNamed:@"qipao1.png"];
}
else if(i%2 ==1)
{
bubble.image = [UIImage imageNamed:@"qipao2.png"];
}
[self.view addSubview:bubble];
[ballArray addObject:bubble];
}
[NSTimer scheduledTimerWithTimeInterval:0.03 target:self selector:@selector(fresh) userInfo:nil repeats:YES];
}
-(void)fresh
{
for(int i = 0;i<ballArray.count;i++)
{
BubbleView *bubble = [ballArray objectAtIndex:i];
for(int j = i+1;j<ballArray.count;j++)
{
BubbleView *bubble2 = [ballArray objectAtIndex:j];
if(sqrt((bubble2.center.x-bubble.center.x)*(bubble2.center.x-bubble.center.x)+
(bubble2.center.y-bubble.center.y)*(bubble2.center.y-bubble.center.y))
<=50)
{
int tempx = 0;
int tempy = 0;
tempx = bubble.xSpeed;
bubble.xSpeed = bubble2.xSpeed;
bubble2.xSpeed =tempx;
tempy = bubble.ySpeed;
bubble.ySpeed = bubble2.ySpeed;
bubble2.ySpeed =tempy;
CGPoint center = CGPointMake(bubble.center.x+bubble.xSpeed,bubble.center.y+bubble.ySpeed);
bubble.center = center;
center = CGPointMake(bubble2.center.x+bubble2.xSpeed,bubble2.center.y+bubble2.ySpeed);
bubble2.center = center;
}
}
if((bubble.frame.origin.x + bubble.frame.size.width >= 320 && bubble.xSpeed >0)
||(bubble.frame.origin.x <=0 && bubble.xSpeed < 0))
{
bubble.xSpeed = -bubble.xSpeed;
}
if((bubble.frame.origin.y + bubble.frame.size.height >= 460 && bubble.ySpeed >0)
||(bubble.frame.origin.y <=0 && bubble.ySpeed < 0 ))
{
bubble.ySpeed = -bubble.ySpeed;
}
CGPoint center = CGPointMake(bubble.center.x+bubble.xSpeed,bubble.center.y+bubble.ySpeed);
bubble.center = center;
}
}