QLPreviewController 文件预览组件SwiftUI UIKit中文文档手册)
QLPreviewController
用于预览项目的专用视图控制器。
class QLPreviewController : UIViewController
总览
一个可以显示许多常见的文件类型,包括以下内容预览:QLPreviewController
iWork文件
Microsoft Office文件
RTF格式的文档
PDF文件
图片
具有符合类型的统一类型标识符(UTI)的文本文件。要了解有关UTI的更多信息,请参见《统一类型标识符参考》。public.text
逗号分隔值或CSV文件
具有usdz格式的3D模型以及独立视图和AR视图,用于查看模型
注意,受支持的通用文件类型的列表可能会在操作系统版本之间更改。此外,您可以通过实现自己的预览扩展名来启用自己文件类型的预览。要了解更多信息,请参阅从头开始快速浏览预览。
向预览控制器提供数据
要使用预览控制器,必须提供一个数据源对象。数据源向控制器提供预览项目,并告诉控制器预览导航列表中要包含多少个项目。如果列表中有多个项目,则模态显示的控制器将显示导航箭头,以使用户在项目之间进行切换。如果使用导航控制器将预览控制器推入视图,则可以在导航栏中提供用于在导航列表中移动的按钮。有关向预览控制器提供项目的详细信息,请参见和。QLPreviewControllerDataSourceQLPreviewItem
呈现预览控制器
您可以通过从演示文稿进行调用来模态演示,也可以使用来将其推送到视图中。预览中包含标题,该标题取自商品URL的最后一个路径部分。您可以通过为预览项目实现访问器来覆盖它。QLPreviewControllerpresent(_:animated:completion:)UIViewControllerUINavigationControllerpreviewItemTitle
在使用Mac Catalyst构建的Mac App中预览项目
对于使用Mac Catalyst构建的Mac应用程序,显示会在中显示预览,并使以前处于活动状态的窗口变暗。但是,与iOS设备不同,在iOS设备上显示预览会隐藏呈现的视图控制器,而以前可见的窗口内容在使用Mac Catalyst构建的Mac应用中仍然可见。请确保内容在可见时适合显示。QLPreviewControllerQLPreviewPanelQLPreviewPanel
此外,如果将嵌入到另一个视图控制器中,则系统不会显示实时预览。而是显示与预览控制器视图大小匹配的缩略图。QLPreviewController
主题
配置预览控制器
1、var dataSource: QLPreviewControllerDataSource?
预览控制器的数据源。
2、protocol QLPreviewControllerDataSource
预览控制器的数据源必须采用此协议才能向控制器提供预览项目。
3、var delegate: QLPreviewControllerDelegate?
预览控制器的委托对象。
4、protocol QLPreviewControllerDelegate
预览控制器的委托人必须采用此协议。
管理项目预览
5、class func canPreview(QLPreviewItem) -> Bool
指示“快速外观”预览控制器是否可以显示项目。
6、var currentPreviewItem: QLPreviewItem?
当前在“快速查看”预览控制器中显示的项目。
7、var currentPreviewItemIndex: Int
预览项目导航列表中当前在Quick Look预览控制器中显示的项目的索引。
8、func refreshCurrentPreviewItem()
要求Quick Look预览控制器重新计算当前预览项目的显示。
9、func reloadData()
要求预览控制器从其数据源重新加载其数据。
技术交流
QQ:3365059189
SwiftUI技术交流QQ群:518696470
相关文章
- JS获取URL中参数,支持多参数传值传参,支持中文
- 将字典直接写入文件,出现中文乱码问题
- QString转换QByteArray时中文问题解决方案
- Handlebars.js 中文文档
- SwiftUI macOS之实现三栏可拖拽界面(中文教程含源码)
- python中time.strftime不支持中文,报错UnicodeEncodeError: 'locale' codec can't encode character 'u5e74' in position 2: encoding error
- MapUserTrackingMode 跟踪模式 MapKit (SwiftUI 中文手册文档)
- ScrollViewReader (SwiftUI 中文文档手册 教程含源码)
- accessibility (SwiftUI 中文文档手册)
- windows 解压文件出现乱码 7zip解压文件中文乱码 解决方法
- 如何解决JAVA程序中文无法显示的问题?
- Web 基础 之 Eclipse 中如何把新建的 jsp 文件默认的编码格式(ISO-8859-1)修改为 UTF-8,避免中文乱码
- 文件下载文件名包含中文时,乱码的处理方法(url编解码)
- 【Python】中文编解码操作