Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
497 views
in Technique[技术] by (71.8m points)

cabasicanimation - how to repeat animation forever in Swift (HUGE_VALF)?

According to the docs, the way to repeat a CABasicAnimation forever is to set its repeatCount to HUGE_VALF.

But in Swift, HUGE_VALF causes a compile error. Swift doesn't seem to know about the standard library (or wherever this constant resides).

What do I do now?

question from:https://stackoverflow.com/questions/24343908/how-to-repeat-animation-forever-in-swift-huge-valf

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Set the repeatCount to Float.infinity. This compiles and works.

In all probability, HUGE_VALF was a legacy value in any case.

Still, it's a bit of a surprise that these numeric constant names are not seen by Swift. I did try importing <stdlib.h> in the bridging header but it didn't help.


But please see now Martin R's answer. Since the time when I posted my answer, Apple has stated their preferred answer explicitly: use .greatestFiniteMagnitude. It is almost the same thing as .infinity but not quite!


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...