【发布时间】:2013-12-08 18:06:07
【问题描述】:
我正在尝试检索网页的标题并将其显示在 NSWindows 标题中。这个应用程序是基于文档的,我没有在带有 AppDelegate 的独立应用程序中尝试过任何东西。我将如何继续检索标题并将其显示在窗口中?
更新:这是我的代码(注意:还不能正常工作)
TitleWindow.h
#import <Cocoa/Cocoa.h>
#import <WebKit/WebKit.h>
@interface TitleWindow : NSWindow <NSApplicationDelegate> {
}
@property
(retain, nonatomic) IBOutlet NSWindow *displayTitle;
@end
TitleWindow.m
#import "TitleWindow.h"
#import <WebKit/WebKit.h>
@implementation TitleWindow
- (void)displayTitle:(WebView *)sender didReceiveTitle:(NSString *)title forFrame:(WebFrame *)frame
{
if (frame == [sender mainFrame]){
[[sender window] setTitle:title];
}
}
@end
【问题讨论】:
-
与 Xcode 无关。
-
另外,试试
[webView stringByEvaluatingJavaScriptFromString: @"return document.title.toString();"]; -
@H2CO3 有点像这样? - (NSString *)windowNibName { // 重写返回文档的 nib 文件名 // 如果你需要使用 NSWindowController 的子类或者你的文档支持多个 NSWindowControllers,你应该删除这个方法并重写 -makeWindowControllers。 [webView stringByEvaluatingJavaScriptFromString:@"return document.title.toString();"]; }
-
@H2CO3 cmets 不允许我在语法视图中放置代码...所以我不知道该告诉你什么哈哈
-
用反引号括起来,
like this。但无论如何,大量代码并不适合 cmets。你不需要任何声明,我知道你正在尝试制作一个单独的方法。你也不需要为我复制 Xcode 无用的评论。
标签: objective-c macos url webview