我有两个UIImageView
填充视图控制器,第一个填充上半部分,第二个填充下半部分。我直接在故事板文件中设置它们。
在该viewDidLoad
方法中,我正在设置代码以便为两者执行动画UIImageView
,使其看起来像一个打开的篮子(第一个UIImageView
移动到顶部直到它离开视图,第二个UIImageView
移动到底部直到它离开视图)。
到目前为止,这是我的代码:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
CGRect basketTopFrame = self.basketTop.frame;
basketTopFrame.origin.y = -basketTopFrame.size.height;
CGRect basketBottomFrame = self.basketBottom.frame;
basketBottomFrame.origin.y = self.view.bounds.size.height;
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationDelay:1.0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
self.basketTop.frame = basketTopFrame;
self.basketBottom.frame = basketBottomFrame;
[UIView commitAnimations];
}
但行为与我预期的不同,顶部框架没有移动,底部框架从左上角到底部动画(原点位置,而不是移出视图)。
这是UIImageViews
我在情节提要中设置的位置:
这是UIImageViews
我启动应用程序的时间:
这是UIImageViews
应用程序完成动画的时间(viewDidLoad
):
请注意,此代码在 Xcode 4.2 中有效,但自从升级到 Xcode 4.5 并使用 Storyboard 后,我开始遇到此问题。提前谢谢。