问题标签 [wkwebview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3265 浏览

javascript - 带有位置服务的 wkwebview

我一直在尝试 swift 并想尝试 wkwebview。我已经构建了一个应用程序,它一切正常,但问题是我加载到我的 wkwebview 的网页使用谷歌地图并且需要位置服务,所以 javascript 应该提示一条消息,说“这个应用程序需要你的位置信息”。swift 应用程序 wkwebview 不显示任何消息也不显示我的谷歌地图。如果我使用 safari 浏览器访问 url,它会提示位置消息,并且在 ios 7 的 uiwebview 中也会提示该消息。还有其他人遇到这个并知道解决方案吗?

0 投票
1 回答
559 浏览

ios - 构造 2,使用 Ejecta 和 iOS8 webview 为 iOS 导出导致空白屏幕

我注意到使用 Construct 2 创建并通过 Ejecta 导出的每个应用程序都无法在 iOS 设备上播放,这会导致屏幕空白。这可能是本地文件的 WKWebview 问题的结果吗?

0 投票
1 回答
13677 浏览

ios - WKWebView 添加到子视图

我可以使用下面的代码以编程方式将 WKWebView 添加到子视图。如何将 WKWebView 添加到通过 Interface Builder 添加的视图 containerView2?

0 投票
2 回答
3072 浏览

ios - WKWebView 和 UIMenuController

我有一个应用程序WKWebView。在这个应用程序中,我自定义了UIMenuController. 无论我做什么,网络视图似乎都会向菜单添加复制和定义选项。如果我将自己设置为第一响应者并对所有内容都返回 NO,我仍然会得到复制和定义选项。而且我已经实现了我自己的复制选项,它根据用户的偏好和确切的选择来做一些特殊的事情。有没有办法删除这些额外的选项?

更新:我已将此归档为雷达 18487289。

0 投票
1 回答
22625 浏览

css - 禁止 WKWebView 缩放内容以与 UIWebView 相同的放大倍数进行渲染

问题

使用WKWebView代替UIWebView,我注意到WKWebView与我的UIWebView. 我希望WKWebView停止这样做,并按照字面意思尊重我的 CSS 值UIWebView

语境

我在我的原生 iOS 应用程序中使用 Web 视图来查看 iPad 上弹出框内的内容,我在其中显示信息内容。能够将其提供给内容和设计人员并说“只需放入一些 HTML 内容,引用链接的 CSS 文件”,这真是太好了。

所有这些在使用UIWebView.

但是popovers通常非常紧凑。

我正在经历什么

在我的狭窄弹出窗口中,内容按比例缩小,就好像我的内容将整个网页缩小以适应。我可以看到 WKWebView 主要用于在 iOS 上构建备用浏览器或构建混合应用程序的人,WKWebView 本质上是接管屏幕。

WKWebView 中的放大倍数不是可以设置的。当然,用户可以放大,但这违背了目的。我不是在寻找放大的视口;我正在寻找与 UIWebView 一样适合和自动换行的整个内容。

使用 WKWebView,在模拟器中,如果我将正文文本大小增加到 50 像素而不是 14 像素,我会看到我想要的大小。然而,这段代码在设备上甚至都没有帮助,所以扩大我的 CSS 大小也不是一种选择!

UIWebView 有什么问题?

嗯,真的没什么。它在 iOS8 中还没有(还)被弃用,也许 b/c 它仍然有用,正如我所经历的那样。然而,我确实注意到 WKWebView 很快。我已经看到一些猜测,即 UIWebView 的写作即将到来。我想:“为什么不现在在 iOS8 中采用更现代的 API?”

所以,我现在继续使用 UIWebView,但如果我可以让它尊重我的 CSS 大小,我想切换到 WKWebView。

这是我的原始 CSS,UIWebView 可以很好地呈现,但是弹出窗口中的 WKWebView 将以非常小的字体呈现:

0 投票
1 回答
3607 浏览

ios - 在 Xamarin 中,如何处理 WKWebView ShouldStartLoad 事件

使用 UIWebView 拦截 ShouldStartLoad 事件,我所要做的就是:

_webView.ShouldStartLoad += (webView, request, navigationType) => { return true }

如何使用 WKWebView 处理这个问题?

0 投票
7 回答
57461 浏览

ios - UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效?

我的 iOS 7+ 应用程序中有一个模块,它是一个 UIWebView。html 页面加载创建自定义形状按钮的 javascript(使用 Raphaeljs 库)。使用 UIWebView,我将委托设置为 self。webView: shouldStartLoadWithRequest: navigationType:每次按下我的自定义按钮之一时都会调用委托方法。请求不应由 html 处理,而应由 iOS 代码处理。所以我使用了一个请求约定(在stackoverflow上的某个地方阅读),使用“inapp”作为我的请求方案。然后我检查主机并采取适当的措施。

此代码在 iOS 7 上运行良好。但在 iOS 8 上 Web 视图显示为空白(错误?),因此我决定将 WKWebView 用于 iOS 8 设备。Web 视图现在渲染得很好(而且速度惊人地快!),但我的按钮没有效果。

我尝试使用- (WKNaviation *)loadRequest:(NSURLRequest *)request,但它没有被调用。

我找不到 UIWebView 委托方法的直接等效项webView: shouldStartLoadWithRequest: navigationType:。使用 WKWebView 处理这些请求的最佳方式是什么?

0 投票
3 回答
7033 浏览

authentication - 清除 WKWebView 的 cookie?

对于 iOS 8 应用程序,我想使用WKWebView我正在构建的自定义身份验证 ViewController。但是,我似乎无法弄清楚如何清除存储的WKWebView. 现在根本不可能吗?

我无法控制服务器端,并且当用户成功登录时,该服务正在发送看起来像永久(或至少长期存在)的 cookie。问题是,如果用户想要更改他们的登录,那么它就变得不可能了,因为即使用户注销并再次按下登录,服务器也会使用存储的 cookie 自动重定向并再次登录。

开放的想法和建议,谢谢!

清除存储的 cookie 很简单,UIWebView您所要做的就是:

但是,WKWebView似乎没有使用 NSHTTPCookieStorage 因为我已经尝试在加载请求之前这样做WKWebView!:(

0 投票
3 回答
7709 浏览

webview - 带有 WKWebView 查看器的简单 OS X 应用程序

我正在尝试使用新WKWebView的 Swift 语言和 Web 查看器创建简单的 OS X 应用程序(不是 iOS)。我希望利用WKWebView课程更快的表现。

在项目 AppDelegate.swift 文件中,我有以下代码:

在 MainMenu.xib 文件中,我向主窗口添加了一个自定义视图对象并将其链接到@IBOutlet var containerView.

我在最后两行代码中收到错误消息:

var req = NSURLRequest(URL: url)

'应用代理。Type'没有名为'url'的成员</p>

self.webView!.loadRequest(req)

预期声明

非常感激任何的帮助。

0 投票
3 回答
23782 浏览

ios - WKWebView 预计进度

我正在尝试Estimated Progress在我WKWebView的中实施,但似乎无法弄清楚。你能帮我吗?

这是我所拥有的:

我看到这个答案有点意思,但那是一个微调器:UIWebView with Progress Bar

Apple 记录了某种文件estimatedProgress(我假设导航栏正下方的蓝色细条显示了 Safari 中的进度),但我一般不知道如何实现:https ://developer.apple.com /library/ios/documentation/WebKit/Reference/WKWebView_Ref/#//apple_ref/occ/instp/WKWebView/estimatedProgress

所以我被困在这里。任何帮助将不胜感激,谢谢!

更新这就是我现在所拥有的。出现崩溃是因为我的 Progress View 和 WKWebView 似乎加载了两次,我不确定为什么会这样。收到需要删除观察者的错误。这是我的代码 -

视图控制器.h

视图控制器.m

更新:使用 CocoaPods 这就是我所拥有的,但它显示了两个视图而不是一个 webview