NumberMorphView 0.2.0

NumberMorphView 0.2.0

测试已测试
Lang语言 SwiftSwift
许可协议 MIT
Released最后发布2017年5月
SwiftSwift版本3.0
SPM支持SPM

Abhinav Chauhan维护。



  • Abhinav Chauhan

NumberMorphView

NumberMorphView是一个视图,用于显示数字,并使用名为数字插值或数字变形的技术进行动画过渡。

alt text

用法

要运行示例项目,先克隆仓库,然后在示例目录中运行pod install

界面构建器

  1. 将UIView拖到您的视图控制器中。
  2. 在身份检查器中将类修改为NumberMorphView
  3. 在大小检查器中将内建大小从默认修改为占位符。
  4. 在视图控制器中创建一个 IBOutlet。

根据以下示例设置数字视图的数字。

numberView.currentDigit = 5;

像以下示例那样过渡到下一个数字。

numberView.nextDigit = 8;

代码集成

NumberMorphView可以与或不与自动布局一起使用。推荐使用内建内容大小。视图的推荐长宽比为13:24。

let numberView = NumberMorphView();
numberView.fontSize = 64;
numberView.currentDigit = 5;
let preferedSize = numberView.intrinsicContentSize();
numberView.frame = CGRect(x: 10, y: 10, width: preferedSize.width, height: preferedSize.height);
self.view.addSubview(numberView);

dispatch_after(5, dispatch_get_main_queue()) {
    numberView.nextDigit = 7;
}

注意:在设置fontSize之后,内建内容大小将会改变。

自定义动画

  • 要设置动画时长
numberView.animationDuration = 4;
  • 要更改动画类型,设置插值器。
numberView.interpolator = NumberMorphView.SpringInterpolator();

已提供以下插值器:LinearInterpolatorOvershootInterpolatorSpringInterpolatorBounceInterpolatorAnticipateOvershootInterpolatorCubicHermiteInterpolator。您还可以添加新的插值器。插值器类需要遵守InterpolatorProtocol,如下所示

class MyLinearInterpolator: InterpolatorProtocol {
    func getInterpolation(x: CGFloat) -> CGFloat {
        return x;
    }
}

要求

  • iOS 8.0+
  • Swift 2.2

安装

NumberMorphView可以通过CocoaPods访问。要安装它,只需在Podfile中添加以下行

use_frameworks!
pod "NumberMorphView"

作者

Abhinav Chauhan

许可协议

NumberMorphView 采用 MIT 许可协议。详细信息请参阅 LICENSE 文件。