Android中Web Apps的目标屏幕
Android中Web Apps的目标屏幕
原文来自Android开发文档
Targeting Screens from Web Apps
对于不同Android设备的web页面,需要注意两点基本的要素:
1.页面的viewport和scale的大小
Android浏览器加载页面时,默认加载方式为“overview mode”,显示一个全局的视图。你可以覆盖重写这个行为,通过定义viewport的大小或者初始化viewport的scale。同样,你可以通过控制缩放大小来控制。
另外,用户可以通过在浏览器设置中关闭overview mode。
尽管如此,当使用WebView来渲染一个页面时,页面使用full zoom(而不是overview mode)来加载。
2.设备的屏幕密度(分辨率)
设备的屏幕分辨率(pixels per inch)也影响页面的分辨率和大小(三种屏幕分辨率low,medium,high)。Android浏览器和WebView为各种大小的屏幕分辨率进行补偿,这样所有设备显示的页面在一个相同的在medium可感知的大小。如果图像对页面来说是个重要的元素,你应该密切注意在不同目标机的scaling,因为image的scaling可以人为改变模糊程度和像素。
为了在所有目标屏幕上提供最佳的可视化表现,应该通过viewport metadata和提供对不同目标屏幕可转变的图片,你可以通过使用CSS和JavaScript来将他们应用于不同的屏幕。
使用Viewport Metadata
例如,虽然一个设备的屏幕的宽度为480pixels,viewport可以使800pixels宽,这样,页面就可以设计为800pixels宽,就能在屏幕上看到完整的视图。
页面的HTML的meta标签中使用viewport属性(必须放在head标签中)
- <head>
- <title>Example</title>
- <meta name="viewport" content="width=device-width, user-scalable=no" />
- </head>
- <meta name="viewport"
- content="
- height = [pixel_value | device-height] ,
- width = [pixel_value | device-width ] ,
- initial-scale = float_value ,
- minimum-scale = float_value ,
- maximum-scale = float_value ,
- user-scalable = [yes | no] ,
- target-densitydpi = [dpi_value | device-dpi |
- high-dpi | medium-dpi | low-dpi]
- " />
- <meta name="viewport" content="width=device-width" />
评论暂时关闭