ios - 如何删除添加到特定相册但不添加到其他相册的照片?

标签 ios swift xcode cocos2d-iphone

我想知道在 swift 和 xcode 中:如何删除添加到特定相册中但不添加到其他相册中的照片。例如添加到相机胶卷中但不添加到其他相册中的照片?我原则上知道,苹果只在其他相册的相机胶卷中制作同一张照片的引用链接,因此如果删除其中一个,您将删除所有其他相册。但是有可能绕过它吗?例如将其作为文件副本复制到不同名称的新相册? 有人知道如何使用它吗?

谢谢,

最佳答案

您可以使用Photos 框架从特定相册中删除照片。您需要该相册的 PHAssetCollection 对象(例如 album)和照片的 PHAsset(例如 asset)属于那张专辑。

为了从特定专辑中删除 Assets ,您需要使用该专辑创建PHAssetCollectionChangeRequest对象(例如request),然后借助 request 使用方法 removeAssets 删除 asset

示例

let album : PHAssetCollection = /*Your album object*/
let asset : PHAsset = /*Your Asset belongs to album*/
PHPhotoLibrary.shared().performChanges({
        guard let request = PHAssetCollectionChangeRequest(for: album) else {
            return
        }
        request.removeAssets([asset] as NSArray)
    }) { (result, error) in
        print("completionBlock",result, error)
    }

关于ios - 如何删除添加到特定相册但不添加到其他相册的照片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49210531/

相关文章:

ios - 如何在 ios 中的数组中添加相机捕获图像

swift - 没有 '/' 候选人产生预期的上下文结果类型 'CGPoint' - Swift 3

iphone - Swift - TableView 如何创建可扩展部分

ios - 在第一个 View Controller 上的 TableView 中显示数组中的数据

ios - 在显示之前在远程推送通知消息中格式化双倍

ios - 从 iOS App 访问(开发或分发)证书

objective-c - 在 iOS 程序中比较 char 数组和字符串

ios - 如何从 touchesBegan 事件中获取 CGPoint?

ios - 为 Alamofire 创建请求主体

iphone - 在 Xcode 中构建后可以存档吗?