我有以下错误:在界面中找不到“窗口”的声明。 虽然当我看到有一个......我可能错过了一些愚蠢的东西,但找不到它。
PlanetoidsAppDelegate.h
#import <Cocoa/Cocoa.h>
#import <WebKit/WebKit.h>
@interface WebViewExampleAppDelegate : NSObject {
NSWindow *window;
IBOutlet WebView *webView;
}
@property (assign) IBOutlet NSWindow* window;
@property (nonatomic, retain) IBOutlet WebView* webView;
@end
PlanetoidsAppDelegate.m
#import "PlanetoidsAppDelegate.h"
@implementation PlanetoidsAppDelegate
@synthesize window; //<-- error here
@synthesize webView; //<-- error here (well, the same one for webView that is...)
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
}
- (void)awakeFromNib {
NSString *resourcesPath = [[NSBundle mainBundle] resourcePath];
NSString *htmlPath = [resourcesPath stringByAppendingString:@"/Planetoids/Planetoids_Game.html"];
[[webView mainFrame] loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:htmlPath]]]; //<-- error: webView undeclared, what makes sense considdering the other errors :P
}
@end
这里的任何人都可以看到错误吗?
答案 0 :(得分:4)
您的界面是WebViewExampleAppDelegate
,但您的实施是PlanetoidsAppDelegate
。这些必须匹配。
答案 1 :(得分:1)
@interface WebViewExampleAppDelegate : NSObject in .h
@implementation PlanetoidsAppDelegate in .m
两个完全不同的类。您需要实现WebViewExampleAppDelegate.m并在该类中合成这些方法。
另外,为此:
@interface WebViewExampleAppDelegate : NSObject {
NSWindow *window;
IBOutlet WebView *webView;
}
尝试
@interface WebViewExampleAppDelegate : NSObject {
UIWindow *window;
IBOutlet WebView *webView;
}