WebView 使用体会

最早接触的,姑且算是这个webkit了吧。 webkit 内就只有webview这一个控件。它也是safari的核心。换句说呢,用了webview,就相当于有一个小型的safari了。

1.引用webkit 首先要导入#import “webkit/webkit.h”

这样就可以声明webview了。

仅仅这些,是不够的。如果运行这样一个程序,会发现有图标在下面一跳一跳的,但是没有界面出来。这是因为需要我们在frameworks里添加webkit.framework。

如此两部分,才算是真正的能用webview了。

2.简易浏览器 IB 给我们提供了一些非常强大的功能,能使得程序员减少许多的代码。 如,一个NSTextField 和 WebView 不用写代码,仅仅在interface builder 就能完成一个简易的浏览器. 按住ctrl,从NSTextField 拖向WebView,选中takeStringURLFrom

就这样,我们的程序完成了,commad+r 运行该界面 在textfield里输入网址,回车,网页便可以浏览了。

3.代码编写 首先这里要提到- (void)awakeFromNib

该函数是专门用于处理ib不能完成的事件,这里最好是只放关于ib的代码。它的执行顺序是在- (id)init 之后。

- (void)awakeFromNib {

NSString *resourcesPath = [[NSBundle mainBundle] resourcePath]; NSString *htmlPath = [resourcesPath stringByAppendingString:@”/index.html”];

}

在这里,我们设置了webview的delegate,还设置了webview启动时,自动载入index.html这个文件,在webview内显示。 如果时想打开其他的网页的花,则[]NSURL URLWithString:@”www.nibirutetch.com”]。

对于启动以后的操作,则可以在webview的delegate方法 – (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame 里面操作。如名字所示,是在webview load 完成之后执行里面的操作。