Если в вашей игре используется кварц, то у каждого объекта пользовательского интерфейса должна быть ограничительная рамка.Это может быть доступ, подобный следующему коду:
UIImage *hero = [[UIImage alloc]initWithImage:image];
CGRect heroBoundingBox = hero.frame;
Контроллер UIViewControl, в котором находится игра, также будет иметь ограничивающий прямоугольник.Самый простой способ проверить, находится ли герой на экране, - это использовать CGRectContainsRect.
UIImage *hero = [[UIImage alloc]initWithImage:image];
CGRect heroBoundingBox = hero.frame;
CGRect screenBoundingBox = viewController.frame;
bool heroOnScreen = CGRectContainsRect(screenBoundingBox, heroBoundingBox);
Затем просто установить такой код:
if (heroOnScreen) {
//continue moving hero
} else {
//move hero back on screen
}
Трудно сказать,Вы должны сделать это, не видя пример кода или зная, как это работает.Надеюсь, это поможет.