我的多线程如:
asset = self.travelService.travelEditModel.assets[i];
PHCachingImageManager *imageManager = [[PHCachingImageManager alloc] init];
PHImageRequestOptions *options = [[PHImageRequestOptions alloc] init];
options.networkAccessAllowed = YES;
[imageManager requestImageDataForAsset:asset options:options resultHandler:^(NSData * _Nullable imageData, NSString * _Nullable dataUTI, UIImageOrientation orientation, NSDictionary * _Nullable info) {
sleep(1);
//我想在这里执行更新进度条的代码。但是无效。
}];
我想更新线程提示 执行到 50% 这样。如何做呢?
我并不是下载照片提示进度。我是从相册里面拿照片,比如30张,然后处理到第几张,给主线程提示进度。
首先代码格式不整齐,差评!
如果你想要在
resultHandler
中操作MBProgressHUD
的话,需要跳回主线程执行。进度获取有一种方式是:预先获取图片总大小,再根据已下载数据流大小做计算得出进度百分比。
当然还有其它方式,也取决于你是用的库。