2

我正在使用 Xcode 4.5.2。

  • 我创建了一个新项目(OS X > 应用程序 > Cocoa 应用程序)。
  • 在链接的框架和库下,我添加了 Webkit.framework。
  • 在 MainMenu.xib 下,我向 Window 添加了一个 Web View 对象
  • 在 MainMenu.xib 下,我添加了 2 个按钮并将它们命名为 Back 和 Forward。
  • 我控制单击按钮并将它们链接到 Web 视图并选择 goBack: 和 goForward:
  • 在 MainMenu.xib 我添加了一个 Text Field 对象
  • 我控制单击文本字段并将其链接到 Web 视图并选择 takeStringURLFrom:

所有这些都奏效了。我可以在文本字段中输入网址,然后按回车并使用后退和前进按钮。

我想手动编写一个默认网站 ( http://www.google.com/ ) 来加载,但我无法确定从这里做什么?

我将我的网络视图链接到什么(当我控制点击它时)?

当应用程序打开时,我需要向我的 AppDelgate.h 和 AppDelgate.m 文件添加什么以将 Google 加载到 Web 视图中?

我做了一些研究并做到了这一点。我能够找到一个可行的示例,但我试图逐步了解它是如何工作的,并被困在这一步。

4

1 回答 1

3

如果您希望您的代理在应用程序启动后加载 Google 主页,您只需将以下内容添加到您的applicationDidFinishLaunching::

NSURL*        url     = [NSURL URLWithString:@"http://google.com"];
NSURLRequest* request = [NSURLRequest requestWithURL:url];
[[self.webView mainFrame] loadRequest:request];

这假设您的 中有以下内容AppDelegate.h

@property (weak) IBOutlet WebView *webView;

您通过 CTRL 将其从WebViewInterface Builder 中的控件拖动到您的AppDelegate.h.

最终代码:

AppDelegate.h

#import <Cocoa/Cocoa.h>
#import <WebKit/WebKit.h>

@interface AppDelegate : NSObject <NSApplicationDelegate>

@property (assign) IBOutlet NSWindow *window;
@property (weak) IBOutlet WebView *webView;

@end

AppDelegate.m

#import "AppDelegate.h"

@implementation AppDelegate

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {

  NSURL*        url     = [NSURL URLWithString:@"http://google.com"];
  NSURLRequest* request = [NSURLRequest requestWithURL:url];
  [[self.webView mainFrame] loadRequest:request];

}

@end
于 2013-02-10T03:08:49.277 回答