TZImagePickerController icon indicating copy to clipboard operation
TZImagePickerController copied to clipboard

v3.8.6切换相册,导致选中状态丢失

Open lionvoom opened this issue 7 months ago • 0 comments

// TZPhotoPickerController.m 切换相册导致,没有保留其它相册已选中的model状态,只保留了当前相册的状态,而且原本选择顺序也变了

- (void)checkSelectedModels {
    TZImagePickerController *tzImagePickerVc = (TZImagePickerController *)self.navigationController;
    NSArray *selectedModels = tzImagePickerVc.selectedModels;
    NSMutableSet *selectedAssets = [NSMutableSet setWithCapacity:selectedModels.count];
    for (TZAssetModel *model in selectedModels) {
        [selectedAssets addObject:model.asset];
    }
    // 拿到了最新的models,在此刷新照片选中状态
    // 由于可能有照片权限变化,也需要刷新selectedModels https://github.com/banchichen/TZImagePickerController/pull/1658
    NSMutableArray *newSelectedModels = [NSMutableArray array];
    for (TZAssetModel *model in _models) {
        model.isSelected = NO;
        if ([selectedAssets containsObject:model.asset]) {
            model.isSelected = YES;
            [newSelectedModels addObject:model];
        }
    }
    
    tzImagePickerVc.selectedModels = newSelectedModels;
}

lionvoom avatar Jul 02 '24 07:07 lionvoom