检测屏幕UIView动画的边缘

时间:2014-01-16 12:42:51

标签: ios objective-c uiview

我有一个UIView 动画来移动屏幕上的对象,我希望动画停止(以及保持位置的对象)当对象离开屏幕时动画停止。

我希望我的对象始终可见,并且当它遇到屏幕边缘时停止移动。目标点可能在任何地方。

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
self.MyObject.center = targetPoint;
[UIView commitAnimations];

我试图触发预定的计时器,检查对象是否在屏幕外,但似乎我的对象的位置没有改变。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果您希望从屏幕的左边缘到右边缘为对象设置动画,下面是代码示例。

CGRect objectFrame = self.MyObject.frame;
objectFrame.origin.x = self.view.frame.size.width-objectFrame.size.width;
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
[self.MyObject setFrame:objectFrame];
[UIView commitAnimations];

希望它有所帮助。 欢呼声。

相关问题