在延迟后触发方法而不滥用 [UIView animateWithDuration]?

发布于 2024-11-30 18:52:55 字数 693 浏览 1 评论 0原文

我有一个 UIViewController 应该控制 2 个 UIImageView 淡入。

我设法使用 UIView animateWithDuration 方法为它们设置动画,如下所示:

[UIView animateWithDuration:1.5
    animations:^{
      [mFrontpageTitle setAlpha:0];
      [mFrontpageTitle setAlpha:1];
    }
    completion:^(BOOL finished){
      [self AnimatePause];
    }];

-(void)AnimatePause {
[UIView animateWithDuration:5.0
    animations:^{
      [mFrontpageTitle setAlpha:0.99];
      [mFrontpageTitle setAlpha:1];
    }
    completion:^(BOOL finished){
      [self AnimateAuthor];
    }];

触发下一个动画。现在,创建从 0.99 到 1.0 的过渡并不是很干净。

有没有更好的方法通过定义持续时间来触发块或发送消息?

谢谢祖帕

I have a UIViewController that should control 2 UIImageViews to fade in.

I managed to animate them using the UIView animateWithDuration method, like this:

[UIView animateWithDuration:1.5
    animations:^{
      [mFrontpageTitle setAlpha:0];
      [mFrontpageTitle setAlpha:1];
    }
    completion:^(BOOL finished){
      [self AnimatePause];
    }];

and

-(void)AnimatePause {
[UIView animateWithDuration:5.0
    animations:^{
      [mFrontpageTitle setAlpha:0.99];
      [mFrontpageTitle setAlpha:1];
    }
    completion:^(BOOL finished){
      [self AnimateAuthor];
    }];

which fires the next animation. Now, creating a transition from .99 to 1.0 is not very clean.

Is there a better way to trigger a block or sending a message by just defining a duration?

thanks

Zuppa

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

多情癖 2024-12-07 18:52:55
NSTimeInterval delay = 1.5; //in seconds
[self performSelector:@selector(myMethod) withObject:nil afterDelay:delay];
NSTimeInterval delay = 1.5; //in seconds
[self performSelector:@selector(myMethod) withObject:nil afterDelay:delay];
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文