我在GREYConfiguration
中看到了以下API,其中默认情况下EarlGrey会将CALayer动画缩短10秒以上 -
/**
* Configuration for setting max allowable animation duration (in seconds) for any CALayer based
* animation. Animations exceeding the specified time will have their duration truncated to value
* specified by this config.
*
* Accepted values: @c double (negative values shouldn't be used)
* Default value: 10.0
*/
GREY_EXTERN NSString *const kGREYConfigKeyCALayerMaxAnimationDuration;
我正在开发一个小型游戏应用程序,其中包含许多此类动画。我注意到,当我启用动画时,我的测试需要很长时间才能运行,这是我的UI测试所必需的。我知道我可以使用UIApplication.sharedApplication.keyWindow.layer.speed
更改整个应用的动画速度。有什么方法可以改变它只适用于我的EarlGrey测试吗?
答案 0 :(得分:3)
将UIApplication.sharedApplication.keyWindow.layer.speed
放在条件语句后面:
#if EARLGREY_ENV
UIApplication.sharedApplication.keyWindow.layer.speed = 100
#endif
只有当应用程序通过Earl Gray运行时才会执行代码行。
有关在伯爵格斗中处理动画的更多信息,请参阅<{3>}下的我应该如何处理动画?。