首页 > 解决方案 > 是否有可能在 Xcode 中有一个依赖于协议目标的协议目标?

问题描述

我正在尝试使用选择性编译来只有一个版本的 AppDelegate,但在 Mac 版本(使用 MacCatalyst)中有一个用于一组协议(特别是 NSTouchBarDelegate)。似乎当目标不是 Mac 时,Xcode 找不到协议。

我试过使用:

    class AppDelegate: UIResponder, UIApplicationDelegate
    #if targetEnvinronment(macCatalyst)
    , NSTouchBarDelegate
    #endif
    {

但编译器返回:

在此处输入图像描述

除了 TouchBar 的单独响应程序之外,有什么想法吗?

标签: xcodemac-catalyst

解决方案


对于外行:

    #if targetEnvironment(macCatalyst)
    extension AppDelegate: NSTouchBarDelegate {}
    #endif

很好的解决方案。


推荐阅读