脚本宝典收集整理的这篇文章主要介绍了解决PhoneGap不支持viewport的几种方法,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
前几天用phonegap编译GameBuilder+CanTK时,发现HTML里的viewport无效。CanTK根据devicePixelRatio检测设备的DPI,然后用viewport设置正确的分辨率。如果viewport无效,CanTK只能以最低分辨率运行。在网上查了一下, 也没有找到系统的资料,但我知道WebView一定有相应的设置来启用viewport,结合找到的资料和phonegap的源码,终于找到了解决方法,这里总结一下:
iOS平台的解决方法:在Phonegap的config.XMl中增加一行配置:
<PReference name="EnableViewportScale" value="true"/>
(奇怪的是此方法对android平台无效,我看了CordovaWebView.java,里面没有相关设置)
andROId 平台的解决方法一:修改CordovaWebView.java:
settings.getUserAgentString(); //增加下面两行代码: settings.setUseWideViewPort(true); settings.setLoadWIThOverviewMode(true);
android 平台的解决方法二:直接修改CordovaWebView.java是个好办法,但是GameBuilder+CanTK支持phonegap的云编译,没有法直接修改CordovaWebView.java。我想到了phonegap插件,找到了一个ViewPortScale的插件,发现根本编译不了,所以自己写了一个com.tangide.viewport的插件,如果里使用GameBuilder+CanTK提供的云编译,已经内置了这个插件。插件的源码在这里:
https://github.com/drawapp8/ViewPort
总结
以上是脚本宝典为你收集整理的解决PhoneGap不支持viewport的几种方法全部内容,希望文章能够帮你解决解决PhoneGap不支持viewport的几种方法所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。