网站建设企业网站制作抖音竞价推广怎么做
QLPreviewController是可以显示常见文件的专用控制器。可以显示的文件有:
📄 文档类:
-
PDF (
.pdf
) -
Microsoft Office 文件:
-
Word 文档 (
.doc
,.docx
) -
Excel 表格 (
.xls
,.xlsx
) -
PowerPoint 演示文稿 (
.ppt
,.pptx
)
-
-
iWork 文档:
-
Pages (
.pages
) -
Numbers (
.numbers
) -
Keynote (
.key
)
-
-
纯文本文件 (
.txt
,.rtf
)
🎨 图片与多媒体:
-
图片格式:
-
JPEG (
.jpg
,.jpeg
) -
PNG (
.png
) -
GIF (
.gif
) -
TIFF (
.tiff
) -
SVG (
.svg
)
-
-
音频/视频:
-
MP3 (
.mp3
) -
WAV (
.wav
) -
MP4 (
.mp4
,.m4v
,.mov
)
-
📦 其他文件类型:
-
压缩包 (
.zip
) -
电子书 (
.epub
) -
代码文件(部分文本可预览,如
.json
,.xml
,.html
等)
QLPreviewController内部的属性和方法都很简单,自己看一下就行了,我就列个文件预览的示例代码吧。Swift实现:
QLPreviewController有自己的导航栏的,我这里不需要所以通过添加qlPreviewController.view的方式添加视图import UIKit import QuickLookclass ViewController: UIViewController, QLPreviewControllerDelegate, QLPreviewControllerDataSource {func numberOfPreviewItems(in controller: QLPreviewController) -> Int {1}func previewController(_ controller: QLPreviewController, previewItemAt index: Int) -> any QLPreviewItem {//多换几种文件格式试试let url = Bundle.main.url(forResource: "嘻嘻嘻", withExtension: "PPTX")return url! as QLPreviewItem}override func viewDidLoad() {super.viewDidLoad()loadPreviewWithQuickLook()}//文件预览private func loadPreviewWithQuickLook() {let qlPreviewController = QLPreviewController.init()qlPreviewController.modalPresentationStyle = .fullScreenqlPreviewController.delegate = selfqlPreviewController.dataSource = selfqlPreviewController.currentPreviewItemIndex = 0self.addChild(qlPreviewController)qlPreviewController.view.frame = .init(x: 0, y: 0, width: self.view.bounds.size.width, height: self.view.bounds.size.height)self.view.addSubview(qlPreviewController.view)} }
效果:
但是如果要显示网页或者html文件,这个就不能实现了,得去使用WKWebView。