测试已测试 | ✗ |
语言语言 | Obj-CObjective C |
许可证 | MIT |
发布最后发布 | 2022年11月 |
由 Nik Kov 维护。
依赖 | |
SDWebImage | > 3.7.0 |
DACircularProgress | ~> 2.3 |
### 由 Nik Kov 开发
大家好!)
这是一个 SDWebImage 的类别,您可以通过三种方式添加 ProgressView:
图像下载使用 SDWebImage(3.7.0 及以上版本)
pod 'SDWebImage-CircularProgressView'
有两个参数和唯一的名称前缀以方便查找。
progressViewType
- LinearPV 或 CircularPV。选择 Progress View 的类型。progressView
- 如果您初始化自己的 UIProgressView,则将其放在那里。它应该是 UIProgressView 类或其子类。- (void)nkv_setImageWithURL:(NSURL *)url usingProgressViewType:(ProgressViewType)progressViewType orCustomProgressView:(UIProgressView *)progressView;
- (void)nkv_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder usingProgressViewType:(ProgressViewType)progressViewType orCustomProgressView:(UIProgressView *)progressView;
- (void)nkv_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options usingProgressViewType:(ProgressViewType)progressViewType orCustomProgressView:(UIProgressView *)progressView;
- (void)nkv_setImageWithURL:(NSURL *)url completed:(SDWebImageCompletionBlock)completedBlock usingProgressViewType:(ProgressViewType)progressViewType orCustomProgressView:(UIProgressView *)progressView;
- (void)nkv_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder completed:(SDWebImageCompletionBlock)completedBlock usingProgressViewType:(ProgressViewType)progressViewType orCustomProgressView:(UIProgressView *)progressView;
- (void)nkv_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options completed:(SDWebImageCompletionBlock)completedBlock usingProgressViewType:(ProgressViewType)progressViewType orCustomProgressView:(UIProgressView *)progressView;
- (void)nkv_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options progress:(SDWebImageDownloaderProgressBlock)progressBlock completed:(SDWebImageCompletionBlock)completedBlock usingProgressViewType:(ProgressViewType)progressViewType orCustomProgressView:(UIProgressView *)progressView;
如果您使用 sd_cancelCurrentImageLoad 方法
,则还必须调用 removeProgressView。
- (void)prepareForReuse {
[super prepareForReuse];
[self.imageView sd_cancelCurrentImageLoad];
[self.imageView removeProgressView];
}
#import "UIImageView+CircularProgressView.h"
@interface NKVTableCell () <ProgressViewDataSource>
[self.bodyImageV nkvSetProgressViewDataSource:self];
[self.bodyImageV nkv_setImageWithURL:url usingProgressViewType:CircularPV orCustomProgressView:nil];
- (CircularProgressViewSettings *)setupCircularProgressViewSettings
{
CircularProgressViewSettings *circularSettings = [CircularProgressViewSettings new];
circularSettings.progressTintColor = [UIColor redColor];
circularSettings.thicknessRatio = 0.2;
return circularSettings;
}
#### 自定义应用程序中的所有 UIProgressView
[DACircularProgressView appearance].trackTintColor = [UIColor lightGrayColor];
[DACircularProgressView appearance].progressTintColor = [UIColor blackColor];
[UIProgressView appearance].trackTintColor = [UIColor lightGrayColor];
[UIProgressView appearance].progressTintColor = [UIColor blackColor];
## 您应该知道
LinearPV
并添加 orCustomProgressView:(UIProgressView*)yourCustomProgressView
,则它将是您的自定义进度条。受以下项目启发