gpt4 book ai didi

cocoa - NSAnimationContext 完成参数?

转载 作者:行者123 更新时间:2023-12-03 17:48:16 25 4
gpt4 key购买 nike

我的动画可以在几个不同的相似 View (在数组中管理)上执行,但完成处理程序不接受参数。那么我如何在完成时知道我正在完成哪个动画?

以下内容用于对一个(多个)剖面 View 的框架进行动画处理。当动画完成时,我需要能够向特定的sectionView发送通知。

NSLog(@"Animation started");

[NSAnimationContext beginGrouping];
[[NSAnimationContext currentContext] setDuration:kAnimationDuration];
[[NSAnimationContext currentContext] setCompletionHandler:^{
[self doStuff];

NSLog(@"Animation complete - now we need to notify the correct sectionView");
}];

[[sectionView animator] setFrame:[self frameForSectionView:sectionView]];

[NSAnimationContext endGrouping];

最佳答案

只需在完成处理程序 block 中引用sectionView。或者,如果它是实例变量、静态变量或全局变量,则在 block 外部创建一个用当前值初始化的局部变量,然后在 block 中引用该局部变量。

该 block 将捕获该值。

关于cocoa - NSAnimationContext 完成参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41988347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com