JPSDisplayLink 0.0.1

JPSDisplayLink 0.0.1

测试测试版
Lang语言 Obj-CObjective C
许可协议 MIT
发布日期最新版本发布日期2014年12月

未声明 维护。



  • JP Simard

JPSDisplayLink 提供了一个简单的、基于 CADisplayLink 的动画接口。

这对于不支持基于 UIView 的动画的属性(如 UILabel 或 UITextView 上的字体大小)来说非常理想。

安装

手动安装

重要提示:如果您的项目不使用 ARC:您必须在目标设置 > 编译阶段 > 编译源中添加 -fobjc-arc 编译器标志到 JPSDisplayLink.m

JPSDisplayLink/JPSDisplayLink 目录拖入您的项目中。

用法

JPSDisplayLink 只有一个类方法

typedef void (^JPSDisplayLinkBlock)(CGFloat progress);

+ (void)runDisplayLinkBlock:(JPSDisplayLinkBlock)block duration:(CFTimeInterval)duration;

将创建一个 JPSDisplayLink 对象,并将其隐式保留在指定的时间内,然后自动释放。

在使用 JPSDisplayLinkBlock 时,请确保遵循适当的块礼仪:例如,避免保留循环。

缓动

通过操作动画块中的 progress 参数来添加缓动到您的 JPSDisplayLink 动画。

例如,要以线性 easing in/out 动画字体大小,将 AHEasing 添加到您的项目中并使用以下代码

[JPSDisplayLink runDisplayLinkBlock:^(CGFloat progress) {
    CGFloat easedProgress = CubicEaseInOut(progress);
    weakLabel.font = [UIFont boldSystemFontOfSize:12.0f + easedProgress*16.0f];
} duration:5.0f];

示例

/JPSDisplayLinkDemo 中查看 Xcode 示例项目。

以下是演示应用程序的动图。请注意,动图中的帧率比现实中的慢得多。

Demo GIF

许可协议

此项目受 MIT 许可协议许可。