使用 QLPreviewingController.preparePreviewOfFile 预览时设置 QuickLook window 大小
Set QuickLook window size when previewing with QLPreviewingController.preparePreviewOfFile
我正在为 macOS 编写一个 QuickLook 插件并且一切正常,除了我无法以编程方式设置预览的 window 大小。
它以 800x600 开头,无论我在代码中的 XIB and/or 中做什么,在调用 preparePreviewOfFile
的 completionHandler
之后 and/or 之前。
其他文件类型,由默认插件处理,调整预览 window 大小以适应文件内容。我也想这么做。
预览 window 可由用户调整大小,一旦调整大小,当我在 Finder 中 select 另一个文件时保持新大小,如果我关闭它并重新打开它会返回到 800x600它在我的插件处理的文件上。
我错过了什么?
QLPreviewingController
应设置其 preferredContentSize
以便 window 可以相应调整大小。
https://developer.apple.com/documentation/appkit/nsviewcontroller/1434409-preferredcontentsize
接受的答案,设置 preferredContentSize
,似乎破坏了 macOS Catalina 中所有子视图的自动调整大小。设置后,当用户手动调整大小或进入全屏时,内容将不再跟踪预览window大小。
看我的问题。
所以我想在答案中添加以下内容:没有已知的方法可以在不破坏自动调整大小的情况下在 macOS Catalina 上执行此操作,但它在 macOS Big Sur 上运行良好。 preferredContentSize
行应该包裹在 #available(macOS 11, *)
守卫中。
我正在为 macOS 编写一个 QuickLook 插件并且一切正常,除了我无法以编程方式设置预览的 window 大小。
它以 800x600 开头,无论我在代码中的 XIB and/or 中做什么,在调用 preparePreviewOfFile
的 completionHandler
之后 and/or 之前。
其他文件类型,由默认插件处理,调整预览 window 大小以适应文件内容。我也想这么做。
预览 window 可由用户调整大小,一旦调整大小,当我在 Finder 中 select 另一个文件时保持新大小,如果我关闭它并重新打开它会返回到 800x600它在我的插件处理的文件上。
我错过了什么?
QLPreviewingController
应设置其 preferredContentSize
以便 window 可以相应调整大小。
https://developer.apple.com/documentation/appkit/nsviewcontroller/1434409-preferredcontentsize
接受的答案,设置 preferredContentSize
,似乎破坏了 macOS Catalina 中所有子视图的自动调整大小。设置后,当用户手动调整大小或进入全屏时,内容将不再跟踪预览window大小。
看我的问题
所以我想在答案中添加以下内容:没有已知的方法可以在不破坏自动调整大小的情况下在 macOS Catalina 上执行此操作,但它在 macOS Big Sur 上运行良好。 preferredContentSize
行应该包裹在 #available(macOS 11, *)
守卫中。