2012-03-07 65 views
0

我有放大的图像放大图像视图。图像视图大于屏幕,并且我将它设置为以特定速度向下对角线移动。NSTimer移动图像

图像确实移动,但在某个点我们看到白色,因为图像滑落。我想继续滑动图片,就像它是一个地球仪一样。或者至少改变方向为相反。我试过这个:

- (void) onTimer { 
palla.center = CGPointMake(palla.center.x+1, palla.center.y+1); 
    if (palla.center.x > -20000||palla.center.x < 20000){ 
    CGPointMake(palla.center.x-1, palla.center.y+-1);  
} 

不幸的是它不起作用。我甚至尝试过pos,但仍然不起作用。我怎么能fizx这个?????请帮忙,我在网上找不到任何教程

回答

1

你可以试试这个。我已经用iphone编写了。 “图像”是图像视图。

-(void)onTimer 
{ 
    CGRect imageRect = image.frame; 

    if (CGRectContainsPoint(CGRectMake(0, 0, 320, 460), image.center)) 
    { 
     image.center = CGPointMake(image.center.x + 50, image.center.y + 50); 
    } 
    else 
    { 
     image.frame = CGRectMake(0, 0, imageRect.size.width, imageRect.size.height); 
    } 
+0

似乎没有工作(在项目iPad上尝试) – Alessandro 2012-03-07 19:24:54

+0

imageRect是要用pallaRect? – Alessandro 2012-03-07 19:25:32

+0

是的,现在它可以工作,但是当图像转到o,o时,它立即执行,没有动画 – Alessandro 2012-03-07 19:37:56

0
  1. 容易way..make新的图像视图..
  2. 将其设置为图像是在..to的第一个相反的方向..
  3. 现在动画两者的方式你正在做..保存

    第二个来源=第一个图像view.origin - 图像view.frame.width。

  4. 当一个视图离开屏幕时,将它放在其他的后面。

+0

否,它最终会完成 – Alessandro 2012-03-07 19:26:19

+0

会完成什么? – Shubhank 2012-03-07 19:29:27