FFCircularProgressView 0.5

FFCircularProgressView 0.5

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最后发布2014年12月

Fabiano Francesconi维护。




  • Fabiano Francesconi

FFCircularProgressView - 一个受 iOS 7 启发的蓝色圆形进度视图

ss1 ss2 ss3 ss4

此进度视图灵感来源于 App Store 中新的进度视图,iOS 7。颜色也来源于此。

查看动画效果

sample

要求

FFCircularProgressView 支持 iOS 版本 > 5,与 ARC 和非 ARC 项目兼容。它依赖于以下 Apple 框架,这些框架应已包含在大多数 Xcode 模板中

  • Foundation.framework
  • UIKit.framework
  • CoreGraphics.framework
  • QuartzCore.framework

您需要 LLVM 3.0 或更高版本来构建 FFCircularProgressView。

将 FFCircularProgressView 添加到您的项目

有许多方法可以将此视图添加到您的项目中。确保您还添加了上述框架。

GIT 子模块

您有标准的 git submodule 选项。只需在您的仓库根目录中运行 git submodule add https://github.com/elbryan/FFCircularProgressView.git <path> 命令。

源文件

手动将源文件添加到您的项目中。您需要的文件是 'FFCircularProgressView.h', 'FFCircularProgressView.m', 'UIColor+iOS7.h', 'UIColor+iOS7.m'。

用法

只需像使用普通的 UIProgressView 一样使用它。请确保在主线程中设置进度值 ;)

double delayInSeconds = 2.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC));
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND,0), ^{
        for (float i=0; i<1.1; i+=0.01F) {
            dispatch_async(dispatch_get_main_queue(), ^{
                [circularProgressView setProgress:i];
            });
            usleep(10000);
        }            
    });
});

您还可以通过下面的两个方法来控制进度视图旋转动画,分别用于启动和停止旋转

// Start spinning
[circularProgressView startSpinProgressBackgroundLayer];

// Stop spinning
[circularProgressView stopSpinProgressBackgroundLayer];

致谢

绘制刻度的代码已经从 GSProgressView 中借鉴。

许可

本代码根据 MIT 许可证 的条款和条件分发。

贡献

我没有要求您的应用中提及我,也没有要求您在使用此代码时收到任何形式的补偿。然而,如果您使用它并且喜欢它,我希望得到反馈。

关注我的Twitter: @elbryanlos

Android

您是Android开发人员,且喜欢这个进度视图?没问题!几位网友将它移植到了Android操作系统上,您可以在这里获取。

谢谢大家!