gpt4 book ai didi

ios - 显示键盘后 UIWebView 上的 scalesPageToFit 损坏了吗?

转载 作者:可可西里 更新时间:2023-11-01 06:11:23 25 4
gpt4 key购买 nike

我有这个元标记:

<meta name="viewport" content="width=768, minimum-scale=1.0, user-scalable=no" />

我正在设置 scalesPageToFit:

webView.scalesPageToFit = YES;

起初这工作正常。当我从纵向转到横向时,它会放大,因此设备的宽度始终为 768 像素。我可以毫无问题地来回移动(人像 <-> 风景)。

一旦我激活虚拟键盘,无论是通过 contentEditable 还是文本区域,它都会完全停止工作,即使在我关闭键盘之后也是如此。

这是 UIWebView 中的错误吗?我还需要做些什么来完成这项工作吗?有没有我可以使用的解决方法?无论方向如何,宽度都必须为 768px。

最佳答案

似乎是 Apple 的私有(private)类 UIDocumentView 的错误。无论出于何种原因,viewportConfigurationsDidChange 在键盘激活后卡在缩放比例上,这是通过调用 _setDocumentScale 设置的。例如,当它应该更改为 1.333 时,它卡在了 1.0。

通过为 UIWebDocumentView 编写一个类别是“可修复的”,UIWebDocumentView 是 UIDocumentView 的一个子类,它不实现这些方法(因此您可以调用 super 的方法)。

尽管我尽了最大努力,但还是找不到使用公共(public) API 解决此问题的方法。我试图弄乱 UIScrollView 的缩放级别,但我永远无法让它正常工作。内容会被转移,并且会发生其他奇怪的事情。甚至尝试使用 JavaScript 来实现。

所以解决这个问题的唯一方法是通过私有(private)类上的类别。

这永远不会在应用商店中获得批准。

因此,在 Apple 修复此问题之前,SOL。

关于ios - 显示键盘后 UIWebView 上的 scalesPageToFit 损坏了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12487899/

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