FFCircularProgressView - 一个受 iOS 7 启发的蓝色圆形进度视图
此进度视图灵感来源于 App Store 中新的进度视图,iOS 7。颜色也来源于此。
FFCircularProgressView 支持 iOS 版本 > 5,与 ARC 和非 ARC 项目兼容。它依赖于以下 Apple 框架,这些框架应已包含在大多数 Xcode 模板中
您需要 LLVM 3.0 或更高版本来构建 FFCircularProgressView。
有许多方法可以将此视图添加到您的项目中。确保您还添加了上述框架。
您有标准的 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操作系统上,您可以在这里获取。
谢谢大家!