欢迎来到代码驿站!

Android代码

当前位置:首页 > 移动开发 > Android代码

解决PhoneGap不支持viewport的几种方法

时间:2021-04-17 09:52:57|栏目:Android代码|点击:

前几天用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

总结

上一篇:Android中关于Notification及NotificationManger的详解

栏    目:Android代码

下一篇:解决Android Studio XML编辑界面不显示下面的Text和Design选项卡

本文标题:解决PhoneGap不支持viewport的几种方法

本文地址:http://www.codeinn.net/misctech/103048.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有