在WebView中注入NSView

时间:2015-02-21 05:49:44

标签: macos cocoa webview

我正在使用Cocoa <{1}} Xcode 6.1.1上的OSX 10.10.2申请

如何在网页顶部注入NSView,以便NSView看起来像是html页面的一个组成部分。
我尝试通过递归搜索WebClipView插入NSView并尝试添加testSubView,但它失败了。

以下是我的webview的示例递归日志。

]  WebFrameView
]   WebDynamicScrollBarsView
]    WebClipView
]     WebHTMLView
]      WebLayerHostingFlippedView
]      WebFrameView
]       WebDynamicScrollBarsView
]        WebClipView
]         WebHTMLView
]      WebFrameView
]       WebDynamicScrollBarsView
]        WebClipView
]         WebHTMLView
]      WebFrameView
]       WebDynamicScrollBarsView
]        WebClipView
]         WebHTMLView
]      WebHostedNetscapePluginView
]    NSScroller

我也尝试在dom中插入<div></div>,但结果并不一致。

1 个答案:

答案 0 :(得分:1)

您不应尝试直接修改WebView视图层次结构。你很可能要么踩到WebKit的脚趾,要么让你自己的脚趾压碎。

你可能想看看这个:

https://developer.apple.com/library/mac/documentation/Cocoa/Reference/WebKit/Classes/WebView_Class/index.html#//apple_ref/occ/clm/WebView/registerViewClass:representationClass:forMIMEType

方法+ (void)registerViewClass:(Class)viewClass representationClass:(Class)representationClass forMIMEType:(NSString *)MIMEType应该允许您将自定义视图用作网页的一部分。但是,您需要将它作为DOM的一部分。

相关问题:OSX Cocoa embed opengl view inside webview