问题标签 [nsviewcontrollerrepresentable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
148 浏览

swiftui - 如何从 NSViewControllerRepresentable 订阅对 ObservableObject 的更改?

我有一个 NSCollectionView 我正在尝试与 SwiftUI 应用程序一起使用,但需要访问 ObservableObject(单例) - 我可以访问单例但似乎无法使用 Swift .observe 也找不到任何关于使用 ObservableObject 的参考视图控制器。

0 投票
2 回答
3187 浏览

swift - 在 macOS 上使用 swiftUI 实现 webkit(并创建网页的预览)

我正在尝试创建一个显示该站点收件箱的菜单栏应用程序。我想做一个简单的函数,用项目的 url 打开一个小弹出窗口(不打开 safari)。收件箱项目看起来像这样

我想,当长按该项目时,它应该像在 macOS 上的默认邮件应用程序中一样预览相关网页,如下所示:

让弹出窗口现在工作

打开网站预览

我尝试在 a 中添加 awkwebviewSafariViewa ,但是使用此 SO 帖子NSViewRepresentable中的代码,我得到了(类似的)以下错误消息

Use of undeclared type 'UIViewRepresentable'

蒂亚!

编辑:

该项目的最基本版本可以在 github 上找到

编辑2:

更加关注这个问题

0 投票
1 回答
380 浏览

macos - 在 NSViewControllerRepresentable 中使用 SwiftUI Coordinator 和 NSTableView?

我在 SwiftUI 中开发了一个 macOS 个人理财应用程序,它通过NSViewControllerRepresentableSwiftUI 和 AppKit 之间的接口使用 NSTableViews 和 NSOutlineViews。

我发现 AppKit 视图功能远远优于我可以使用 SwiftUI 列表创建的任何东西,而且它们运行得更快并且支持 TypeSelect。将数据传递到 Appkit ViewControllers 很简单,但获取信息似乎不那么简单。

Apple 开发人员文档建议我应该使用一个Coordinator类,我曾尝试这样做但无济于事。我需要的委托方法 ( func tableViewSelectionDidChange(_ notification: Notification)) 无法运行(从我的Coordinator班级内部)。

目前我正在交换数据和操作NotificationCenter.default,并且效果很好,但我热衷于使用“官方”方法。我找到了一个成功使用 Coordinator 的 macOS 应用程序(在https://www.markusbodner.com/til/2021/02/08/multi-line-text-field-with-swiftui-on-macos/)但我不能让我的Coordinator班级正常工作,NSTableViewDelegate即使它构建和运行时没有错误(Xcode 12.4)。

我首先要做的就是获取一个NSViewController包含 a 的 aNSTableView以通过 a 将其传递NSTableView.selectedRow到其父 SwiftUI 视图中Coordinator,每当用户在 NSTableView 中选择一个新行时。任何人都可以帮忙(如果可能的话,请提供一些示例代码)?

0 投票
1 回答
77 浏览

swift - iosMath 正在使 SwiftUI 崩溃

我正在尝试使用 SwiftUI 构建一个 Mac 应用程序,我想在其中使用 IosMath 显示Math。我使用 CocoaPods 安装了它,并且可以导入它。但是每次我尝试访问包含 MTMathUILabel 的视图时,我的应用程序都会崩溃说:027055+0200 latextest[1709:84867] [General] -[NSNib _initWithNibNamed:bundle:options:] could not load the nibName: latextest.Latex in bundle (null).

我的代码如下: 在 SwiftUI 中:

调用我的 NSViewControllerRepresentable:

加载视图: