NSTableView複数のセルを含むがあります。セルにNSTextFieldとがあります。NSProgressIndicator各セルには、独自のアップロード率を表す独自の進行状況インジケーターがあります。
ここで、アップロードの進行状況を把握できるように、アップロードのパーセンテージに従って進行状況インジケーターを更新する必要があります。
- (void)startUploading:(NSArray *)filePathArray
{
if (self.QNToken) {
NSString *token = self.QNToken;
NSUInteger count = [filePathArray count];
// We may have multiple files to upload.
for (int i = 0; i < count; i ++) {
NSString *filePath = filePathArray[i];
NSData *fileData = [NSData dataWithContentsOfFile:filePath];
NSString *key = [fileData md5String];
// Upload option
QNUploadOption *option = [[QNUploadOption alloc] initWithMime:nil
progressHandler:^(NSString *key, float percent) {
QNUploadDetailCell *cell = [self.tableView viewAtColumn:0 row:i makeIfNecessary:NO];
[cell.progress.animator setDoubleValue:percent];
[cell.progress displayIfNeeded];
}
params:nil
checkCrc:NO
cancellationSignal:nil];
// Let's upload!
[self.uploadManager putFile:filePath
key:key
token:token
complete: ^(QNResponseInfo *info, NSString *key, NSDictionary *resp) {
NSLog(@"%@", info);
NSLog(@"%@", resp);
} option:option];
}
}
}
ただし、進行状況インジケーターはアニメーション化されません。
のパーセンテージも出力しますprogressHandler。パーセンテージは 0 から 1.0 に増加し続けます。
しかし、進行状況バーはまだ停止し続けます。
何か案は?
