【问题标题】:Scaling does not work with PhoneGap on iPad/iOS 5缩放不适用于 iPad/iOS 5 上的 PhoneGap
【发布时间】:2012-01-29 04:43:32
【问题描述】:

我在 PhoneGap 应用程序中遇到了缩放问题。我的问题与this question 非常相似。我想允许用户在我的应用程序中缩放,因为它都是 UIWebView 它应该可以工作。我在本地 html 文件和 PhoneGap 在身份验证后打开的远程站点上放置了以下元视口标记:

<meta name="viewport" content="width=device-width; user-scalable=yes; initial-scale=1; maximum-scale=5; minimum-scale=1" />

我还编辑了 PhoneGap.plist 并将 EnableViewportScale 设置为 YES。这些设置都没有任何区别。在 PhoneGap 中运行时,我根本无法缩放页面。我们的用户希望在应用程序中进行扩展,因为他们已经习惯于在浏览器中运行它。该应用程序显示图形文件、PDFS 等,并且需要允许缩放。

我在本地登录页面上使用 jQuery-Mobile,但是一旦定向到托管应用程序就只有 jquery 和 varios

关于为什么 PhoneGap 不允许我的应用使用标准捏合和缩放手势进行缩放的任何想法?

编辑: 好的,奇怪的行为更新。现在缩放工作正常,除了为应用程序的一部分添加 ChildBrowser 功能外,我没有进行任何更改。现在该应用程序可以扩展。我怀疑 ChildBrowser 是否真的与它有关,因为我可以在不使用 ChildBrowser 插件的情况下进行扩展。到底是怎么回事?我仍然想要答案,以便我知道它为什么起作用,因为如果我不知道是什么使它开始起作用,我很可能在未来的更新中再次失去缩放。

【问题讨论】:

标签: jquery-mobile cordova


【解决方案1】:

当您测试缩放时,您是否在任何阶段使用 cmd+shift+k 清理过项目?您会发现 index.html 将被 Xcode 大量缓存,因此每次部署到模拟器或设备时,您都应该清理项目以确保最新的 html 可以到达设备。我花了几个小时来解决这样的莫名其妙的问题才意识到它只是缓存生效。

这可以通过再次进行更改、移除缩放、不清理和部署来测试。现在检查它是否仍然可以缩放。

【讨论】:

  • 不,我没有,我肯定会对此进行测试,但是,如果我的 index.html 仅提供登录功能,然后 webview 被重定向到外部站点,缓存是否仍然适用?是为整个应用程序设置缩放的初始 index.html 还是外部站点的元数据在我在那里后决定缩放?我在这两个地方都有。
  • 当时加载的任何文档都将应用缩放。对我来说,如果 index.html 中没有元标记,那么它就无法扩展。但是,当您使用元标记访问外部站点时,缩放就会生效。
  • 我会这么想,但似乎并非如此。起初我只是将元数据添加到外部站点而没有任何效果。然后我将它添加到本地 index.html (我真的不想要),但这仍然不起作用。现在无需进一步的元更改,它就可以工作了。
  • 你明白了,@sciritai。这似乎与缓存有关。我们删除了所有视口元标记,刷新了缓存,现在它工作得很好。谢谢!
【解决方案2】:

您可能需要在视图中添加对多点触控的支持。

theWebView 上将multipleTouchEnabled 设置为YES

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-22
    • 2012-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多