我想打開一個文件,將其放在應用程序圖標上。 當我這樣做時,我的應用程序已打開,因此文件擴展名已定義好並與我的應用程序相關。 但application:openFile:
函數永遠不會被調用。所以我無法打開我的應用程序中丟棄的文件。 我追溯到openFile:
但從未去過。NSApplicationDelegate應用程序:openFile。永遠不會達到openFile:功能
我發現的所有答案只是添加在代表openFile:
,這一切都沒有在我的情況下。
任何幫助將非常感激。提前致謝。
這是我的環境。
plist擴展了要打開的文件。我刪除文件時打開了我的應用程序。
我在應用程序的初始化beggining我的委託,
mydelegate = [[MyController alloc] init];
而且在委託,
在包括
@interface MyController : NSObject <NSApplicationDelegate> {
@private
NSWindow *window;
}
@property (assign) IBOutlet NSWindow *window;
-(id) init;
-(BOOL) application: (NSApplication*)sharedApplication openFile:(NSString*) fileName;
@end
而在.m文件,
@implementation MyController
@synthesize window;
- (id)init{
self = [super init];
if (self) {
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(applicationWillFinishLaunching:)
name:NSApplicationWillFinishLaunchingNotification object:nil];
}
return self;
}
- (void) applicationWillFinishLaunching:(NSNotification *)aNotification{
NSLog(@"applicationWillFinishLaunching");
}
-(BOOL) application: (NSApplication*)sharedApplication openFile:(NSString*) fileName {
NSLog(@"openFile=%@", fileName);
return YES;
}
@end
'yourFilePath'從哪裏來? – trojanfoe
您需要提及您的具體路徑 –
但是,無論用戶在圖標上放置什麼,路徑肯定都是這樣,並且您在編譯時不會知道它? – trojanfoe