ios – 选择第二个选项卡会在第一个选项卡中停止动画,但不会重新启动

ios – 选择第二个选项卡会在第一个选项卡中停止动画,但不会重新启动,第1张

概述我使用Storyboard在 Xcode 4.2中创建了一个新的选项卡式应用程序项目. 在viewDidLoad中,我添加以下代码: [UIView animateWithDuration:30 delay:0 options:UIViewAnimationOptionRepeat | UIViewAnimatio 我使用Storyboard在 Xcode 4.2中创建了一个新的选项卡式应用程序项目.
在vIEwDIDLoad中,我添加以下代码:

[UIVIEw animateWithDuration:30                      delay:0                    options:UIVIEwAnimationoptionRepeat | UIVIEwAnimationoptionCurvelinear                 animations:^(voID) {                     CGRect imageVIEwFrame = self.scrollingImageVIEw.frame;                     imageVIEwFrame.origin.x = CGRectGetWIDth(imageVIEwFrame) / -2;                     self.scrollingImageVIEw.frame = imageVIEwFrame;                 } completion:nil];

然后我创建关联的UIImageVIEw属性并在IB中连接它.

@property (nonatomic,strong) IBOutlet UIImageVIEw *scrollingImageVIEw;

我将图像放入imagevIEw,在模拟器或iPod touch中运行,我看到滚动.

但是,当我选择第二个选项卡然后返回到第一个选项卡时,动画会立即完成,即使我将上述内容放入vIEwWillAppear,也无法重新启动.我搜索了很多答案,但无法解决.

任何帮助,将不胜感激.

解决方法 您正在处理的问题似乎特定于标签栏控制器,而不是故事板或特定动画.问题是当您切换到另一个选项卡时,动画停止,当您返回第一个选项卡时,它不会恢复.

在vIEwWillAppear中再次排序动画不起作用(如您所述),但如果您首先在vIEwWilldisappear中删除动画,则在vIEwWillAppear中再次对其进行排序应该有效.例如

- (voID)vIEwWilldisappear:(BOol)animated{    [self.vIEw.layer removeAllAnimations]; // or whatever you need to use to remove your specific animation}

注意:动画删除代码应该在vIEwWilldisappear而不是vIEwWillUnload中,因为切换选项卡时不会调用vIEwWillUnload.

总结

以上是内存溢出为你收集整理的ios – 选择第二个选项卡会在第一个选项卡中停止动画,但不会重新启动全部内容,希望文章能够帮你解决ios – 选择第二个选项卡会在第一个选项卡中停止动画,但不会重新启动所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1051840.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存