我有一个非常简单的应用程序,它具有UIImageView和UIButton。每次用户按下按钮时,图像将在x方向上移动-44,在y方向上移动-41。我的问题是:如何设置“ if语句”,以便当UIImageView到达屏幕中的某个点(可能是屏幕的末尾)时,它将在屏幕的其他点(可能是屏幕的开始)处重新生成。 ?

像这样:如果imageOne到达x点和y点,则在x点和y点重新生成imageOne。

这是我的代码:

文件。 H

{

IBOutlet UIImageView *ImageOne;

}

-(IBAction)Button:(id)sender;


文件。米

-(IBAction)Button:(id)sender{


//ImageOne moving down the screen

[UIView animateWithDuration:0.1f
             animations:^{

                 ImageOne.center = CGPointMake(ImageOne.center.x -44, ImageOne.center.y +41);

             }];


我需要在代码中实现什么?

任何帮助将不胜感激!

先感谢您!

最佳答案

我认为您不需要出于自己的目的使用“ animateWithDuration”。

假设您有imageOne,并且将其沿x方向向左移动,并且当图像
移出屏幕,您希望它移回屏幕中间。
尝试这个

-(IBAction)Button:(id)sender{
   //reset image onto screen.
   if(imageOne.center.x < 0){
    imageOne.center = CGPointMake(200, imageOne.center.y);

    }

    //move image left
    imageOne.center = CGPointMake(imageOne.center.x-44, imageOne.center.y);
}

10-08 05:54