iOS PhotoKit:获取除全景之外的所有智能相册

2023-12-01

我使用以下代码来获取所有智能相册:

PHAssetCollection.fetchAssetCollections(with: PHAssetCollectionType.smartAlbum, subtype: PHAssetCollectionSubtype.albumRegular, options: nil)

如何从此次提取中排除 Panoramas 智能相册?我假设我必须使用选项参数添加谓词,但我不知道如何格式化谓词。


如果您想排除全景图,请考虑使用数组并仅获取您需要的集合。换句话说,将集合列入白名单。或者您可以枚举集合并排除全景图。白名单还可以让您控制集合的顺序。

var smartAlbums: [PHAssetCollection] = []
let subtypes:[PHAssetCollectionSubtype] = [
    // all photos collection
    // .smartAlbumUserLibrary,
   .smartAlbumFavorites,
   .smartAlbumPanoramas,
   .smartAlbumLivePhotos,
   .smartAlbumBursts,
   .smartAlbumDepthEffect,
   .smartAlbumLongExposures,
   .smartAlbumScreenshots,
   .smartAlbumSelfPortraits
]

smartAlbums = fetchSmartCollections(with: .smartAlbum, subtypes: subtypes)

private func fetchSmartCollections(with: PHAssetCollectionType, subtypes: [PHAssetCollectionSubtype]) -> [PHAssetCollection] {
    var collections:[PHAssetCollection] = []
    let options = PHFetchOptions()
    options.includeHiddenAssets = false

    for subtype in subtypes {
        if let collection = PHAssetCollection.fetchAssetCollections(with: with, subtype: subtype, options: options).firstObject {
            collections.append(collection)
        }
    }

    return collections
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS PhotoKit:获取除全景之外的所有智能相册 的相关文章

  • 如何为整个 iOS 应用程序设置自定义字体而不指定大小

    我正在尝试在整个我的应用程序中应用自定义字体iOS app 我发现我可以使用 UILabel appearance setFont UIFont fontWithName Proxima Nova size 17 0 设置所有的默认字体和大
  • 未安装 Apple 的全球开发者关系 (WWDR) 中间证书

    我今天无法通过 Appcelerator Titanium 发布我的应用程序 AdHoc 我开始收到此错误 错误 未安装 Apple 的全球开发者关系 WWDR 中间证书 错误 这将阻止您为 iOS 设备构建应用程序或用于分发的软件包 我上
  • 渐变方向从左到右

    我完全被这个问题难住了 它应该如此简单 以至于让我发疯 我正在使用这个苹果反射教程 苹果反射示例 http developer apple com library ios samplecode Reflection Listings MyV
  • iOS-将图像转为视频时,CVPixelBufferCreate内存无法正确释放

    我正在将图像制作成视频 但总是因为内存警告而崩溃 分配太多CVPixelBufferCreate 我不知道如何正确处理 我看过很多类似的主题 但没有一个能解决我的问题 这是我的代码 void writeImagesArray NSArray
  • 如何在 UITextView 中禁用放大功能

    我想摆脱 UITextView 中的放大和文本选择 但我需要电话号码 链接和地址检测器 我在用 void addGestureRecognizer UIGestureRecognizer gestureRecognizer if gestu
  • Draggable Boxview 不更新 Xamarin

    我的第一个问题是框视图生成在左上角 而不是我指定的设计网格第 10 行和网格第 3 列 第二个问题在于可拖动视图 在代码本地可拖动视图的第一部分中 它正确地调用了触摸事件 但也许它没有在GUI中更新
  • 与自定义键盘扩展进行通信,主机应用程序无法在设备中运行,但可以在模拟器中运行

    我正在使用自定义键盘扩展 这几乎完成了 但当我与扩展和我的主机应用程序通信数据时 我只是面临设备问题 该应用程序在设备中没有工作 但在模拟器中工作也是如此 我的代码如下 HostApp 视图控制器 void viewDidLoad defa
  • 在 UITableViewCell 内动态更改标签宽度

    我正在尝试建立一个自定义表格视图 正如您在图片中看到的 我在故事板一侧将标签的宽度默认设置为 160 磅 并在加载表格时动态更改宽度 我通过修改 cellForRowAtIndexPath 委托方法来实现此目的 因此 根据日期的长度 我设置
  • 设置UITextField的光标位置

    我查看了单点触控示例并尝试过 var range new NSRange selectionStart 1 NumberTextField SelectedTextRange IndexedRange GetRange range 但这会在
  • UIAlertAction 处理程序在延迟后运行

    我正在尝试将 UIAlertViews 更改为 UIAlertControllers 我为此设置了这个操作 UIAlertAction undoStopAction UIAlertAction actionWithTitle Undo St
  • 如何计算CLLocationDistance的中心坐标

    我想计算我的位置和一些注释之间的中心点 到目前为止我已经这样做了 CLLocation myLoc self locMgr location MKPointAnnotation middleAnnotation locationV anno
  • UINavigationBar 滑开而不是留在原处

    我创建了演示项目来展示问题 我们在 UINavigationController 中有两个视图控制器 MainViewController这是根 class MainViewController UIViewController lazy
  • UIView 周围的虚线边框

    如何在周围添加虚线边框UIView 像这样的东西 如果您喜欢子层 还有另一种方法 在您的自定义视图的 init 中 输入以下内容 border 是 ivar border CAShapeLayer layer border strokeCo
  • UIImageWriteToSavedPhotosAlbum 选择器语法问题

    努力让 UIImageWriteToSavedPhotosAlbum 快速工作https developer apple com library ios documentation UIKit Reference UIKitFunction
  • Xcode 服务器 ibtool 构建失败

    我一直在研究使用 Xcode Server 进行 CI 我已经解决了一些问题 但现在有一个问题困扰着我 构建似乎工作正常 但在测试阶段挂起 并在日志底部生成以下内容 2015 11 25 14 44 45 650 xcodebuild 58
  • iOS Twitter NSURLErrorDomain 代码=-1012

    我正在尝试通过在我的应用程序中注册 Twitter 来获取用户的联系方式 我发现this https github com malcommac DMTwitterOAuthgithub上的项目看起来非常好 我只遇到一个问题 如果我使用来自
  • iOS 开发:如何强制 UIWebView 加载 Facebook 的非移动版本?

    我正在深入研究 iOS 开发 当我尝试在 UIWebView 中加载特定的 Facebook 粉丝页面时 它会加载该网站的移动版本 该版本仅加载粉丝页面的墙 而不是我需要加载的特定选项卡 在我的应用程序的 iPad 版本中 UIWebVie
  • 如何删除以前的 ViewController

    我是一名学生 对编程还很陌生 我正在尝试在业余时间学习 Objective C Swift 我使用 spriteKit 和 swift 制作了一个游戏 有多个菜单 场景 我正在尝试从一个视图控制器转换到另一个视图控制器 为此 我使用了以下代
  • GCD 与自定义队列

    我想知道这两者的性能有什么区别 dispatch async dispatch get global queue DISPATCH QUEUE PRIORITY HIGH 0 perform complex operation dispat
  • Swift:UICollectionViewCell didSelectItemAtIndexPath 更改背景颜色

    我可以轻松更改单元格的背景颜色CellForItemAtIndexPath method func collectionView collectionView UICollectionView cellForItemAtIndexPath

随机推荐

  • SqlDependency.Start(connectionString) 每次都返回 false

    我设置了访问数据库的权限 use DbName GRANT SUBSCRIBE QUERY NOTIFICATIONS TO dbuser use DbName GRANT SELECT ON OBJECT schema tableName
  • w3c document.forms[0].fieldname 等效项

    我一直在使用 document forms 0 fieldname value 从表单中获取 javascript 中的值 但我想使用名称来引用该字段而不是 0 这些天以来等效的是什么
  • 在 MarkLogic 8 中调用具有来自其余端点的依赖项的 xquery 库

    我们正在从 MarkLogic 6 升级到 8 并且在调用库模块时遇到了一些问题 我们有 xquery 库模块 可以从自定义 REST 扩展和非 REST xquery 调用 马克逻辑公司文档表示 REST 端点可以使用通过新 ext 端点
  • 程序化表单提交

    我想抓取网页的内容 内容是在该网站上填写并提交表格后生成的 我已经阅读了如何抓取最终结果内容 网页 但如何以编程方式提交表单 我正在使用 python 并读到我可能需要获取带有表单的原始网页 解析它 获取表单参数 然后执行 X 有人能指出我
  • 如何在应用程序中将粤语设置为语音搜索语言?

    我当前的代码在使用 ZH ISO 代码表示普通话时工作正常 但不适用于粤语 这是下面的代码 Intent i new Intent RecognizerIntent ACTION RECOGNIZE SPEECH String myLang
  • 无法在 Javascript 中动态添加项目到 Owl Carousel

    我正在尝试动态地将项目添加到猫头鹰旋转木马 我是这样做的 HTML div class owl carousel lesson carousel div class item item logo div class product item
  • SpringBoot 中的 javax.validation.constraints.Email

    我有一个经过此验证的 bean Email message Email is not valid regexp a z0 9 a z0 9 x01 x08 x0b x0c x0e x1f x21 x23 x5b x5d x7f x01 x0
  • Spring @ResponseBody 返回 JSON,但缺少键

    我正在以 JSON 格式返回 SQL 查询的结果 结果正常 但缺少键 查询中指定的列 我是否必须将类与查询关联才能获取键名称 我不认为这是 Jackson 映射 因为当我显式使用它时 对象映射器而不是让 Spring 在 ResponseB
  • 来自表视图控制器的多个 Segues

    我有一个小型应用程序 它对初始表格视图使用多个部分布局 一个部分显示 Twitter 的最新趋势 另一部分显示 Twitter 的最新故事 当我单击趋势列表中的某个项目时 我会转换到一个新的表视图控制器 该控制器显示有关该趋势的最新推文 在
  • Bash 条件管道

    如果命令返回 true 如何通过管道传输命令的输出 function open TEMPFILE mktemp u if gpg2 quiet decrypt batch passphrase 2 1 2 gt TEMPFILE then
  • 与 jquery close() 等效的 JavaScript 是什么?

    我有以下代码 它是用 DOM API 而不是 jquery 编写的 我不知道为什么 它位于用于 jquery 表单验证的提交函数内 我需要更改 parentNode 部分 以便 最接近 而不是 parent 我不擅长 JavaScript
  • Nimbus 外观和感觉调整菜单栏的颜色

    我正在尝试调整 Nimbus 外观和感觉的颜色 但它只能部分工作 特别是我在调整菜单栏的颜色时遇到问题 这是一个运行示例 import java awt Color import java awt Dimension import java
  • 使用 Java 8 IntStream 计算阶乘?

    我对 Java 8 和 lambda 表达式比较陌生Stream 我可以使用计算阶乘for循环或递归 但有没有办法使用IntStream计算一个数的阶乘 即使阶乘在整数范围内我也很好 我通读了IntStream文档在这里 http docs
  • 执行中的 Hadoop 错误:映射中的键类型不匹配:预期为 org.apache.hadoop.io.Text,已收到 org.apache.hadoop.io.LongWritable

    我正在 Hadoop 上实现 PageRank 算法 正如标题所示 我在尝试执行代码时遇到了以下错误 映射中的键类型不匹配 预期为 org apache hadoop io Text 已收到 org apache hadoop io Lon
  • 从表中获取 blob 图像并使用 php sqlite3 显示它

    我知道这个问题已经被问过很多次了 但我无法使用其中任何一个来解决这个问题 我是 sqlite 的新手 无法理解我做错了什么 我正在尝试什么 我正在尝试制作个人资料查看页面 我可以从我的 sqlite 数据库中获取所有详细信息 但无法显示我的
  • 在 Windows 命令行中获取接口名称、IP 和 MAC

    我想获取机器上所有接口 IP 和 MAC 地址的列表 我有很多机器 大约 600 台 可以获取此信息 但我无法在设备上使用批处理文件 我想发送命令并返回回显的输出 我需要的所有信息都在ipconfig all但我不知道如何用 for 循环来
  • 模拟 Java 枚举以添加值来测试失败情况

    我有一个enum或多或少像这样切换 public static enum MyEnum A B public int foo MyEnum value switch value case A return calculateSomethin
  • C# - 不同类型对象的列表

    我想创建一个列表 其中包含游戏中生成的所有不同单位的所有对象 但它们并不都是同一类 如果有帮助的话 它们都是主单元类的子类 但基本上我有一个具有基本功能的主要单位类 然后有更多的剑士 长枪兵等 我希望能够将所有不同的类型放在一个列表中 以便
  • 在同一(匿名)表中使用表键

    我想在同一个表中的匿名表中使用密钥 如下所示 loadstring return a One b a two 从我的角度来看 这should返回下表 a One b One two 然而 它只是返回nil 这可以做到吗 如何做到 As th
  • iOS PhotoKit:获取除全景之外的所有智能相册

    我使用以下代码来获取所有智能相册 PHAssetCollection fetchAssetCollections with PHAssetCollectionType smartAlbum subtype PHAssetCollection