- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我创建了 NSApplication 子类:
class MyApplication: NSApplication {
override func sendEvent(theEvent: NSEvent) {
if theEvent.type == NSEventType.KeyUp && (theEvent.modifierFlags & .CommandKeyMask).rawValue != 0 {
self.keyWindow?.sendEvent(theEvent)
} else {
super.sendEvent(theEvent)
}
}
}
之后,我将 Info.plist 中的“Principal class”更改为 MyApplication,最后在 Main.storyboard 的 Application Scene 中,我也将 Application 更改为 MyApplication。
当我运行应用程序时,我收到以下消息:
Unable to find class: MyApplication, exiting
有人可以帮我解决这个问题吗?
最佳答案
尝试:
@objc(MyApplication)
class MyApplication: NSApplication {
或者,您必须像这样设置 Info.plist。
<key>NSPrincipalClass</key>
<string>YourAppName.MyApplication</string>
^^^^^^^^^^^^
关于这个没有确切的文件,但是this description is corresponding :
In order to preserve namespacing when a Swift class is used in Objective-C code, Swift classes are exposed to the Objective-C runtime with their fully qualified names. Therefore, when you work with APIs that operate on the string representation of a Swift class, you must include the fully qualified name of the class. For example, when you create a document–based Mac app, you provide the name of your NSDocument subclass in your app’s Info.plist file. In Swift, you must use the full name of your document subclass, including the module name derived from the name of your app or framework.
和this :
When you use the
@objc(<#name#>)
attribute on a Swift class, the class is made available in Objective-C without any namespacing.
关于swift - Swift 中的子类 NSApplication,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27144113/
我遇到了一个奇怪的问题,我点击离开窗口。它放弃了主要和关键。然后我单击返回它,并且单击的 View 不响应鼠标单击。但第二次单击确实会导致 View 做出响应。就好像在第一次单击期间,窗口不是关键,而
我想知道是否允许使用 runModalForWindow() 启动多个模式循环。在我的应用程序中,我有以下设置:当用户在非模态窗口 A 中按下按钮 A 时,将使用 runModalForWindow(
您好,我是 cocoa 框架的新手,因此需要帮助来更好地理解该框架。 我当前的重点领域是了解 NSApplication 默认创建的线程数以及控制或限制它的方法。也就是说,我看到创建了一个空窗口的基本
我的窗口中有一个 NSTextField 和 4 个具有等效键的菜单项 ←↑→↓. 当选择文本字段并按箭头键时,我希望光标在文本字段中移动,但会执行相应的菜单项操作。 所以响应者链中肯定存在问题。为了
当我的窗口加载时,我遇到了崩溃(下面的回溯)。这似乎表明核心动画正在发生一些事情,但我没有启动任何动画,只是显示窗口。 将特定堆栈 View 的剪切阻力从 1000 更改为 750 可以暂时避免崩溃,
我有一个应用程序,其中的 main.m 返回 NSApplicationMain(argc, (const char **) argv);。 我想在 -applicationDidFinishLaun
UIApplication 和 NSApplication 有什么区别? (因为我没有从他们的文档中得到它...) 有人可以给我一些有用的链接来详细解释它们之间的区别吗? 另外,AppNameAppD
我创建了 NSApplication 子类: class MyApplication: NSApplication { override func sendEvent(theEvent: NS
这可能吗,就像当您调用“hide:”时它会调用“applicationWillHide:”? 我的应用程序使用可变数量的窗口,具体取决于可用屏幕的数量,因此当调用“miniaturizeAll:”时,
我有一个由以下单个 .m 文件组成的应用程序: #import int main(int argc, char* argv[]) { [[[NSThread alloc] initWithBlo
我需要在 MonoMac 中继承 NSApplication 来重写 NSApplication 的 sendEvent(C# 术语中的 SendEvent)方法,以便接收媒体键事件(Macbook
我已经搜索了很长一段时间,但根本找不到任何东西,我已经有了可以创建的窗口,但现在当我尝试调用 makeKeyAndOrderFront 时,没有应用程序可以调用它,所以我想知道是否有人可以给出一个关于
我遇到了无法访问应用程序主窗口的问题,因为它返回 nil。 let window = NSApplication.sharedApplication().mainWindow 我发现了类似的问题: H
好吧,这真的难倒我了: 我在窗口上创建了一个模态表 -(IBAction) login: (id) sender { [NSApp beginSheet:loginWindow modalFor
一个NSStatusItem应用程序,并将NSStatusItem的 View 设置为myView [statusItem setView:myView]; 这样 myView 可以显示在状态栏中,我
看来我无法从“系统偏好设置” Pane 中控制 NSApp 委托(delegate),这是可以理解的。当程序激活时,是否有其他方法可以通知我的对象? 最佳答案 Cocoa 框架中的大多数委托(dele
我试图将我的应用程序分成不同的子进程,每个子进程都做一件非常具体的事情。主要原因是稳定性和更好的内存利用率,因为我使用保守的垃圾收集器(boehm-weisser)。 我不想用一个庞大的过程来完成这一
我目前正在尝试编写我的第一个 CoreData-Application,它需要访问应用程序委托(delegate)来获取某些内容。因此,我试图在我的委托(delegate)中创建一个小变量,我想读取该
我来自 Cocoa touch 背景,有一点我被困住了,我试图从头开始创建一个 ViewController 并将我的 xib 中的对象连接到我的新 ViewController 中的操作。我将文件的
在我的 mac os x 应用程序中,我对 NSApplication 进行子类化并重写它的 -sendEvent: 方法。苹果提示: The app includes 'OBJC_IVAR_$_NS
我是一名优秀的程序员,十分优秀!