为什么webview报告不同的屏幕大小,我可以禁用它

时间:2016-08-16 19:00:47

标签: javascript java android html webview

基本上,我在WebView屏幕中创建了一个Android 720 x 1280。但是,当我评估screen.widthscreen.height时,回复为360640

我理解这可能部分是因为内容以可读的方式显示,但是,当我尝试将静态宽度设置为WebView时,如1000px x 1000px,Javascript仍然评估相同。

是否有办法禁用此功能,以便内容与桌面屏幕上的内容相同,screen.widthscreen.height会返回真实的手机分辨率或我手动设置的分辨率XML。

如果不能使用WebView解决方案,即使包括更改源代码,也可以使用Crosswalk(基于铬)解决方案。

2 个答案:

答案 0 :(得分:1)

如果我理解正确,您希望以桌面模式显示网站,而不是移动模式。要实现此目的,您可以使用.Range("A1:Z1000").Autofilter 'etchttps://github.com/delight-im/Android-AdvancedWebView

的此自定义子类

它有一个方法WebView可以做你想要的。

答案 1 :(得分:0)

这可能是由于设备的像素比率。

see this thread for a detailed explanation

请注意,不同的Android屏幕将根据其分辨率具有不同的比率。我的体验是iphone / ipad;我的解决方案是检测像素比率并将其用作定位所有元素的乘数。

另外,如果可行的话,我建议根据乘数而不是固定值进行定位。例如:

x = 0.5 * screen.width * xPixelRatio

会给出屏幕50%(即中间)的相对位置。通过以这种方式定位元素,只要您的宽高比相同,元素将始终拉伸以适合,并且您可以通过更改xPixelRatio&来调整不同的宽高比。 yPixelRatio变量。