我开发了一个应用程序,它在 Swift 中使用 WKWebView 显示一个网页。我需要禁用用户选择和标注(因为网络加载了一个图表)并且我没有找到任何方法来使用 WKWebView 来做到这一点。
这是我的代码:
import UIKit
import WebKit
class ViewController: UIViewController, WKNavigationDelegate, WKUIDelegate {
@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string: "https://danfg95glucose.azurewebsites.net")
let request = URLRequest(url: url!)
webView.navigationDelegate = self
webView.load(request)
}
}
Run Code Online (Sandbox Code Playgroud)
我想做类似的事情,但在 Swift 中使用 WKWebView:
// Disable user selection
[webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitUserSelect='none';"];
// Disable callout
[webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitTouchCallout='none';"];
Run Code Online (Sandbox Code Playgroud)
是否可以?
这是显示问题的图像:
非常感谢您的回复。对不起,我的水平,我是新手,我正在学习编程。
我正在尝试将NSInteger转换为NSString以在UIAlerView中显示NSInteger值.但问题是我得到这个错误:"当我试图转换NSInteger时,错误的接收器类型'NSInteger'(又名'long')".
NSInteger:
NSInteger clasesDadas = clases.count;
Run Code Online (Sandbox Code Playgroud)
clases.count是TableView中的行数.
代码是:
-(void)infoAction
{
NSInteger clasesDadas = clases.count;
NSString *inStr = [NSString stringWithFormat:@"%d", [clasesDadas intValue]]; /*HERE IS THE ERROR*/
UIAlertView *alertatiempo = [[UIAlertView alloc] initWithTitle:@"Información" message:inStr delegate:self cancelButtonTitle:@"Aceptar" otherButtonTitles:nil];
[alertatiempo show];
}
Run Code Online (Sandbox Code Playgroud)
谁能帮我?非常感谢你.
我正在开发一个在 Swift 中使用 WKWebView 显示网页的应用程序。我需要禁用用户选择和标注(因为网络加载了一个图表)并且我没有找到任何方法来使用 WKWebView 来做到这一点。
我正在尝试使用此代码,但不幸的是,似乎从未调用过此方法。你知道我的代码的哪一部分可能是错误的,或者我能做什么?
public func webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: (WKNavigationActionPolicy) -> Void) {
if (navigationAction.navigationType == .linkActivated){
decisionHandler(.allow)
} else {
decisionHandler(.cancel)
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的完整代码:
import WebKit
import UIKit
class ViewController: UIViewController, WKNavigationDelegate, WKUIDelegate {
@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string: "http://danfg95glucose.azurewebsites.net")
let request = URLRequest(url: url!)
webView.navigationDelegate = self
self.webView.uiDelegate = self
webView.load(request)
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
print("loaded")
} …
Run Code Online (Sandbox Code Playgroud)