objective-c – 分层Cocoa WebView – 绘图顶部?

objective-c – 分层Cocoa WebView – 绘图顶部?,第1张

概述webview in core animation layer 我能找到的唯一其他线程是上面的,不一定符合我的需要.是否有一种可靠的方法来简单地在webview上绘制视图?我试图在WebView上层叠常规NSView,并且它首先绘制正确,但是webview中的任何移动(滚动页面等)似乎使视图无效并产生视觉伪像. 我试过了: [[[NSApp mainWindow] contentView] add webview in core animation layer

我能找到的唯一其他线程是上面的,不一定符合我的需要.是否有一种可靠的方法来简单地在webvIEw上绘制视图?我试图在WebVIEw上层叠常规NSVIEw,并且它首先绘制正确,但是webvIEw中的任何移动(滚动页面等)似乎使视图无效并产生视觉伪像.

我试过了:

[[[NSApp mainWindow] contentVIEw] addSubvIEw:vIEw positioned:NSWindowAbove relativeTo:webVIEw];

没有运气,同样的问题 – 除非我遗漏某些东西,否则z-ordering似乎不起作用.

这只是webvIEws的限制吗?

我也尝试将上面的视图实现为一个窗口,它工作得更好(只是以编程方式控制窗口的位置).但是,所需的行为是用户在此窗口中输入一些文本,但是为了不使用“焦点” – 即当用户点击文本字段时主窗口变为非活动状态(x – 变为灰色)新窗口.有什么办法可以避免吗?

我已经尝试了子类化NSWindow并重写canBecomeKey(返回YES)和canBecomeMain(返回NO),但窗口仍然窃取焦点.

编辑:我哭了:-(我无法弄清楚在webkit上的绘图方式.另一方面,我做了一个方法来强制我的应用程序的主窗口保持活动状态,即使你有一个具有键状态的d出窗口.但是,当在d出对话框中使用文本输入时(必须强制进入键窗口状态),它会产生意想不到的后果.退格不起作用::摇头::和鼠标事件没有分发到下面的webkit视图(对于嵌入在HTML中的组件的鼠标悬停).疯狂.

玩笑

解决方法 有点晚了,但我对同样的问题感到头疼,问题发生两年后我仍然无法找到答案.在我的例子中,在我想通过WebVIEw绘制的视图上设置wantsLayer = YES解决了问题. 总结

以上是内存溢出为你收集整理的objective-c – 分层Cocoa WebView – 绘图顶部?全部内容,希望文章能够帮你解决objective-c – 分层Cocoa WebView – 绘图顶部?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1010035.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存