gpt4 book ai didi

ios - 如何在 turbolinks-ios 中禁用 UIWebView 的缩放?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:38:16 26 4
gpt4 key购买 nike

我正在试验 turbolinks-ios适用于 turbolinks 5 的适配器.

为了让某些 View (例如一开始的欢迎 View )感觉更原生,我想停用一些 UIWebView 功能,例如缩放或选择文本。

如何在 UIWebView 实例上禁用这些功能?

演示应用

iOS 版 Turbolinks 有一个演示应用程序,如果可以更轻松地回答问题,可以用作示例上下文。

可在此处找到演示应用程序: https://github.com/turbolinks/turbolinks-ios/tree/master/TurbolinksDemo

无效:设置 maximumZoomScale

UIScrollViewmaximumZoomScale 的文档如下:

maximumZoomScale: A floating-point value that specifies the maximum scale factor that can be applied to the scroll view's content. This value determines how large the content can be scaled. It must be greater than the minimum zoom scale for zooming to be enabled. The default value is 1.0.

因此,在 View Controller 中,我尝试设置属性:

// DemoViewController.swift
class DemoViewController: Turbolinks.VisitableViewController {

override func viewDidLoad() {
super.viewDidLoad()
visitableView.webView?.scrollView.maximumZoomScale = 1.0
visitableView.webView?.scrollView.minimumZoomScale = 1.0
}

// ...
}

但不幸的是,这没有效果。

最佳答案

通过在视口(viewport)元标记上设置 user-scalable=no 可以在服务器端禁用缩放:

<head>
<meta name="viewport" content="width=device-width, user-scalable=no" />
</head>

作为this stackoverflow answer建议:

user-scalable=no ... You use it if you want your web app to feel more like a native app (in terms of zooming).

已经有some discussion这在 iOS 10 中将不再可能。但根据 release nots of iOS10 beta 6 ,现在选择加入:

Safari

  • WKWebView now defaults to respecting user-scalable=no from a viewport. Clients of WKWebView can improve accessibility and allow users to pinch-to-zoom on all pages by setting the WKWebViewConfiguration property ignoresViewportScaleLimits to YES.

关于ios - 如何在 turbolinks-ios 中禁用 UIWebView 的缩放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38927658/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com