阻止IOS动画同时出现

时间:2013-02-04 00:15:45

标签: ios objective-c ios-simulator

我听说IOS会批量制作动画。

例如,我有大约4个方法做一些更新(在主线程上),当它们完成时,我调用一个方法来淡入显示其完整的复选标记的图像。 (见下文)但似乎它们都出现在同一时间。如何在每次方法调用后显示它们?

[mySubClass1 UpdateAllGeneralData_Single];
[self FadeImageGeneralInfo];

[mySubClass1 UpdateAllMeetingData_Single];
[self FadeImageMeetingList];

[mySubClass1 UpdateAllSpeakerData_Single];
[self FadeImageSpeakerList];

1 个答案:

答案 0 :(得分:1)

您可以使用计时器将每次后续调用延迟FadeImage____List一定量,或者您可以使用UIView animateWithDuration:delay:options:animations:completion:类方法延迟每个后续动画。

如果选择选项2,实现它的最简单方法可能是更改FadeImage______List以接受延迟参数。然后,例如(如果每个动画花费0.5秒):

[mySubClass1 UpdateAllGeneralData_Single];
[self FadeImageGeneralInfoWithDelay:0];

[mySubClass1 UpdateAllMeetingData_Single];
[self FadeImageMeetingListWithDelay:0.5];

[mySubClass1 UpdateAllSpeakerData_Single];
[self FadeImageSpeakerListWithDelay:1.0];