从Swift调用Objective-C -> 无法在作用域中找到类型“AppDelegate”
从Swift调用Objective-C -> 无法在作用域中找到类型“AppDelegate”
我已经阅读了这个问题,我相信我的问题是不同的。
我有一个Swift类SwiftUtils.swift
,它已经在我的项目中调用objective c代码,我也有一些objective c代码回调Swift。
所以我的桥接头文件已经正常工作。
我的问题是,我正在Swift中构建一个系统菜单,并尝试像这样调用我的AppDelegate中的方法:
@objc func createMenuItem() { let appDelegate = NSApplication.shared.delegate as? AppDelegate let status = NSMenuItem(title: "System Status", action: #selector(appDelegate.showSystemStatus(_:)), keyEquivalent: "s") status.target=appDelegate.self statusItem.menu?.insertItem(status, at: 0) }
我无法让编译器解析AppDelegate
在函数的第一行。
Xcode一直告诉我“无法在范围内找到类型\'AppDelegate\'”
我的桥接头文件:
#ifndef Foo_Bridging_Header_h #define Foo_Bridging_Header_h #import <Foundation/Foundation.h> #import "uiframework/Utils.h" #import "AppDelegate.h" #endif /* Foo_Bridging_Header_h */
我的AppDelegate.h:
#import <Cocoa/Cocoa.h> #import "Foo-Swift.h" @interface AppDelegate : NSObject @property SwiftUtils *utils; - (void) checkForUpdates; + (void) showSystemStatus; @end
admin 更改状态以发布 2023年5月25日