NSOpenPanel setAllowedFileTypes

2024-06-28

我有一个 NSOpenPanel。但我想让它只能选择 PDF 文件。我正在寻找类似的东西:

// NOT WORKING 
NSOpenPanel *panel;

panel = [NSOpenPanel openPanel];
[panel setFloatingPanel:YES];
[panel setCanChooseDirectories:YES];
[panel setCanChooseFiles:YES];
[panel setAllowsMultipleSelection:YES];
[panel setAllowedFileTypes:[NSArray arrayWithObject:@"pdf"]];
int i = [panel runModalForTypes:nil];
if(i == NSOKButton){
    return [panel filenames];
}

我希望有人有解决方案。


我注意到一些事情......改变setCanChooseDirectories到NO。启用后,这表明文件夹是有效输入。这很可能不是您想要的功能。您可能还想将允许的文件类型更改为[NSArray arrayWithObject:@"pdf", @"PDF", nil]对于区分大小写的系统。runModalForTypes应该是文件类型的数组。将您的代码更改为如下所示:

// WORKING :)
NSOpenPanel *panel;
NSArray* fileTypes = [NSArray arrayWithObjects:@"pdf", @"PDF", nil];
panel = [NSOpenPanel openPanel];
[panel setFloatingPanel:YES];
[panel setCanChooseDirectories:NO];
[panel setCanChooseFiles:YES];
[panel setAllowsMultipleSelection:YES];
[panel setAllowedFileTypes:fileTypes];
int i = [panel runModal];
if(i == NSOKButton){
    return [panel URLs];
}

斯威夫特 4.2:

let fileTypes = ["jpg", "png", "jpeg"]
let panel = NSOpenPanel()
panel.canChooseFiles = true
panel.canChooseDirectories = false
panel.allowsMultipleSelection = false
panel.allowedFileTypes = fileTypes
panel.beginSheetModal(for: window) { (result) in
    if result.rawValue == NSApplication.ModalResponse.OK.rawValue {
         // Do something with the result.
         let selectedFolder = panel.urls[0]
         print(selectedFolder)
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NSOpenPanel setAllowedFileTypes 的相关文章

  • iOS:无法从 Swift 建立 RabbitMQ 连接

    我正在尝试从 Swift 连接 RabbitMQ 我已关注this https github com rabbitmq rabbitmq objc client 图书馆 创建 Pod 设置并进入工作区 已检查并核实 成功运行 viewDid
  • 使用 Titanium Mobile 编译应用程序后 JavaScript 代码会发生什么

    我从 appcelerator 安装了 Titanium 并构建了 KitchenSink 示例应用程序 一切正常 我只是想知道 javascript 代码最终在构建的应用程序中的位置 我用 grep 编辑了 Xcode 项目以及结果应用程
  • 如何在 Objective C 中将 html 数据转换为 PDF

    我想在 Objective C 中动态地将 html 转换为 pdf 转换它的最佳方法是什么 以便它保持与 html 相同的外观 提前致谢 Prasad UIGraphicsBeginPDFContextToFile https devel
  • 如何使用 NSDecimalNumber 获得除法的 int 和 modulo (mod)

    我对 NSDecimalNumber 及其 行为 感到困惑 我有一个 NSDecimalNumber 代表美元价值 比如 37 50 美元 我想知道 5 0 进入这个数字有多少次 然后知道剩下的是什么 我可以得到直除法并得到 7 50 但我
  • iPhone IOS5 Storyboard,如何使用自定义的 .xib 文件加载 UIViewController?

    我有一些来自旧 iOS4 项目的 UIViewController 它们使用的是在界面生成器中创建的 xib 我的新项目是为 iOS5 构建的 使用故事板 我正在尝试将 UIViewController 添加到故事板 但让它使用我已经拥有的
  • WGS84 iOS 上外部 GPS 数据的大地水准面高度高度偏移

    对于我正在编写的应用程序 我们将 IOS 设备与外部传感器连接起来 该传感器通过本地 WiFi 网络输出 GPS 数据 该数据以相对于海拔高度的 原始 格式出现 一般来说 所有 GPS 高度都需要应用与基于当前位置的 WGS84 大地水准面
  • UIDatePicker 中的最小和最大日期

    我想从日期选择器中获取最小和最大日期 但最小日期应为当前日期的 18 最大日期应为当前日期的 100 假设当前年份是 2018 年 那么我想要最小日期 2000 年和最大日期 1918 年 到目前为止我所做的是 NSCalendar gre
  • LocalNotifications 的振动和声音

    如何向本地通知添加振动和声音 code UILocalNotification notification UILocalNotification alloc init NSDate firedate settime date notific
  • 从故事板向 UILabel 属性字符串添加下划线失败

    从故事板中我选择有问题的 UILabel 然后在属性检查器 gt 标签 gt 我选择 属性 同样在属性检查器 gt 标签 gt 文本 gt 我选择内容 然后我单击字体图标并选择下划线 基本上 我从弹出的 字体 窗口中选择的任何更改都不会生效
  • iOS9 按需访问和下载资源

    我正在尝试实现新的 iOS9 功能应用程序细化 我了解如何在 Xcode 7 中标记图像并启用按需资源 但我不明白如何在我的应用程序中实现 NSBundleResourceRequest 有人可以帮助我 我将不胜感激 大部分信息都可以在 A
  • 编译到模拟器时如何排除 Xcode 中的框架

    我在我的项目中包含了 TokBox 框架 这样我们就可以进行视频短信 问题是该框架以及它们所需的其他一些框架不允许您在模拟器中编译或运行该应用程序 他们不受支持 有没有办法设置编译器标志以在编译到模拟器时跳过 TokBox 和其他框架 原因
  • 难以访问在 Interface Builder .xib 文件中创建的 UITableViewCell

    在我的 UITableView 中 对于表格最后一部分的最后一行 我加载了一个特殊的 UITableViewCell 它与表格上的所有其他单元格不同 我在 xib 文件中创建了该单元 并为其指定了重用标识符 endCell 我认为我可以执行
  • 组织 Objective-C/XCode 的 #import 语句

    经过几个月的 Objective C 编码后 我完全明白什么时候我需要一个 import 导入语句如何级联 波纹 以及何时使用转发类 我do not知道如何聚合导入以将它们放入 lt gt 而不是用引号引起来 尽管这可能仅适用于框架 问题是
  • iPhone 上的 COMET(服务器推送到客户端)[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在寻求从我的服务器到我的 iPhone 应用程序建立某种套接字 COMET 类型的功能 本质上 任何时候用户设法在服务器上设置任意
  • registerUserNotificationSettings 不显示提示 iOS 8

    我似乎无法收到显示的提示registerUserNotificationSettings在 iOS 8 1 或 8 2 中 这就是我正在做的didFinishLaunchingWithOptions if application respo
  • 在 UITextView 内画一条线 - NSAttributedString

    我想在里面画一条可定制的线UITextView由一些文本组成 使用NSAttributedString 这是我尝试过的 NSString unicodeStr NSString stringWithFormat C C C 0x00A0 0
  • UIModalTransitionStyleFlipHorizo​​ntal 横向垂直翻转

    在横向模式下 从一个视图 导航控制器堆栈的一部分 转换到另一个视图作为模态视图 并将 UIModalTransitionStyleFlipHorizo ntal 设置为 modalTransitionStyle 视图在横向模式下垂直翻转 动
  • 使用 NSPredicate 进行反向字符串比较

    我一直在互联网上寻找这个答案 但到目前为止还没有运气 所以我需要咨询这里聪明又友善的人 这是我第一次在这里提问 所以我希望我做得正确 不要重复这个问题 对于我看到的所有示例 搜索字符串是核心数据中存储的内容的子字符串 另一方面 我想实现以下
  • Objective-C 创建只有一个实例的类的正确方法

    我正在尝试实现一个类 该类的子类NSObject直接 在使用该实例的应用程序运行的整个过程中只能有一个实例可用 目前我有这种方法 MyClass h interface MyClass NSObject MyClass instance e
  • 快速判断文件是否为有效视频

    确定文件是否是可播放视频的最快方法是什么 我不关心它是否腐败 只关心它是否是哑剧类型should可以在 iPad 上播放 我玩过将文件推送到NSURL正如另一个问题所建议的 但每个文件可能需要 gt 1 秒 这太慢了 我目前正在查看文件扩展

随机推荐

  • message.awaitReactions 未检测到我的反应

    我有一个需要反应的不和谐命令 但是当我对消息作出反应时 它根本不执行任何操作 当它结束时 它会记录Collected 0 items Code const msg await message reply React to this mess
  • Emacs 中自动关闭大括号?

    我见过一个名为 Vim 的插件自动关闭 http www vim org scripts script php script 5Fid 1849 发现自this https stackoverflow com questions 10230
  • 在嵌入式设备上投射指针

    我在 32 位嵌入式系统上转换和修改指针时遇到了一个奇怪的问题 红蜂经济标签 http www redwirellc com store node 1跑步连续操作系统 http contiki os org 再具体一点 uint32 t a
  • 在 Jenkins 中使用多分支管道“定期构建”

    我正在使用 Pipeline 插件运行 Jenkins 2 我已经设置了一个多分支管道项目 其中每个分支 主分支 开发分支等 的根目录中都有一个 Jenkinsfile 设置起来很简单 但是 即使代码没有更改 我也不知道如何让每个分支定期运
  • 按数字键对字典排序

    我有一个带有整数键和整数项的字典 只需要根据键对字典进行排序 但我发现的所有示例仅适用于字符串键 将键作为数组获取 对该数组进行排序 然后使用排序后的数组从字典中提取值 Sub Tester Dim d As Object Dim i As
  • NetBeans 采用 JSF 服务器库而不是注册库

    我有一个具有以下规格的企业应用程序 EAR JavaEE 5 JDK 6 JSF 2 运行在Weblogic 11g 10 3 6 上 我里面有一个 WAR weblogic 服务器有 JSF 库 但我想要我已经提供的库 问题是 当我在 项
  • 使用changeYear 选项时,我可以让 jQuery 日期选择器显示更多年份吗?

    我在一个应用程序中使用 jQuery 日期选择器 该应用程序将用于插入和更新员工的出生日期等 我发现必须点击几次才能进入 70 年代和 80 年代 许多员工出生的年代 这很麻烦 有没有一种方法可以通过更少的点击来访问这些 未来 年代 这就是
  • 在 Flask 中调用 HTML 文件中的 python 函数

    我的 python 文件中有一个文件夹列表 在 HTML 文件中 我迭代该列表以显示页面上每个文件夹的名称 for folder in folders li a href folder folder a li endfor 我想做的是 当您
  • 既然似乎有升级推送,我们是否可以少担心 IE 6 的问题? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Android autocompletetextview下拉框的元素有大字体

    我想将自动完成下拉框元素大小更改为较小的值 我对 textview settextsize 所做的任何更改仅影响字段框中的值 而不影响下拉框中的值 我正在动态添加列表项 并将我的适配器设置为资源 adapterForFromAutoText
  • 如何在合并期间优先选择一个分支中的文件?

    前段时间我从我的项目中创建了一个分支master分支 我们就这样称呼它吧new feature 当我正在工作时new feature the master分支遵循其正常的演变 现在new feature已准备好合并到master我看到一些冲
  • 如何从 Azure Key Vault 获取证书以在 docker 镜像中使用

    我在构建 docker 映像时使用 ssl 证书来与 Kubernetes 中的其他不同服务进行通信 现在我的存储库中有 ssl 证书 并将作为工件的一部分发布 我们计划将证书移至密钥库并在执行管道时获取它 我不确定如何在构建 docker
  • 如何列出表外键

    有没有办法使用 SQL 列出给定表的所有外键 我知道表名称 架构 我可以将其插入 您可以通过 information schema 表来完成此操作 例如 SELECT tc table schema tc constraint name t
  • 如何使用其基本名称而不是 Item(#) 选择 XML 子节点?

    我有点陷入以下困境 我尝试使用 VBA 将当地银行网站的汇率获取到 Excel 主要用于 XML 解析练习 我想说这是我第一次认真的尝试 经过几个小时的谷歌搜索和阅读相关的 SO 问题后 我得到了或多或少可行的解决方案 但我想对其进行优化以
  • Javascript uber 和prototype 之间的区别

    我对 javaScript 比较陌生 我正在做一些继承 我以为我知道原型是什么 但后来我遇到了 uber 方法 现在我不知道这两者之间的区别 我知道uber就像java中的super 仅此而已 但原型却让我烦恼 如果您能给我一些使用这两个的
  • 如何使用 CollectionViewSource 对 LongListSelector 进行排序

    我有一个LongListSelector目前正在填充来自的图像IsolatedStorage 我希望能够按日期按升序或降序对它们进行排序 我一直在参考http babaandthepigman wordpress com 2011 07 0
  • 准备好的语句,转义变量

    我是否需要采取任何措施来保护这三个变量 例如使用转义字符串或绑定它们 我不确定我是否正确地执行了此操作 人们只是建议使用准备好的语句 所以我正在尝试弄清楚它们 order POST order heading POST heading co
  • 结账时 Magento 自定义字段

    是否有任何教程可用于说明如何在前端结帐步骤中添加自定义字段 例如采购订单号 职位名称 客户评论等 以及在管理 gt 创建 gt 订单中 我通常的座右铭是找到 并在需要时购买 一个已经具有您寻求的功能的模块 特别是当该项目的生命周期涉及版本升
  • 推送后删除敏感数据

    因此 我正在开发一个项目并添加一个 gitignore 文件以防止包含一些敏感数据 但它无法按预期工作 现在我已经推送了它 有没有办法从远程存储库中删除它 这样历史记录中就没有它的证据了 您可以在本地恢复更改 git commit amen
  • NSOpenPanel setAllowedFileTypes

    我有一个 NSOpenPanel 但我想让它只能选择 PDF 文件 我正在寻找类似的东西 NOT WORKING NSOpenPanel panel panel NSOpenPanel openPanel panel setFloating