Galaxy Tab是一个拥有7英寸1024×600(WSVGA) 分辨率的屏幕,运行Android 2.2(升级Froyo)的平板电脑。下面的指南将帮助我们优化应用程序界面,获得最佳的用户体验。
1、使用高分辨率[high density display (HDPI)]的图片资源
从Android 1.6开始,增加了对多种屏幕尺寸和分辨率的支持,具体的定义如下:
screen sizes: large, normal, small
densities: high (hdpi), medium (mdpi), low (ldpi)
这些属性在AndroidManifest.xml中的定义如下:
<supports-screens
android:largeScreens=”true”
android:normalScreens=”true”
android:smallScreens=”true”
android:resizable=”true”
android:anyDensity=”true” />
结合Galaxy Tab平板电脑,在应用程序包中使用高分辨率[high density display (HDPI)]的图片资源,使用minSDKVersion为4或更高版本,这样就可以在应用程序包中添加高分辨率的图片资源。将AndroidManifest.xml文件中的android:anyDensity属性设置为”true”,当系统找不到高分辨率的图片资源时,可以缩放当前已经存在的图片资源,但是这样可能没有给用户最好的体验。为了支持minSDKVersion为3的设备,同时还必须将AndroidManifest.xml文件中的android:largeScreens属性设置为“true”。
2、Galaxy Tab平板电脑的默认
DeviceMetrics.density = 240
DeviceMetrics.xdpi = 168
DeviceMetrics.ydpi = 168
Density属性[ro.sf.lcd_density]默认设置为 240
属性值具体的含义,如下图所示:
在实际开发中,我们必须考虑以上默认的设置。
3、位图资源的缩放
当对位图资源进行缩放处理时,充分考虑设备的高度和宽度,在程序运行时获取设备的高度和宽度代码如下:
WindowManager mWMgr mWMgr =
(WindowManager)context.getSystemService(Context.WINDOW_SERVICE);
int width = mWMgr.getDefaultDisplay().getWidth();
int height – mWMgr.getDefaultDisplay().getHeight();
4、下面列举一些强烈推荐的建议:
- 在XML布局,使用wrap_content和fill_parent来填充整个父窗口;
- 使用FrameLayout的,而不是AbsoluteLayout,减少界面布局对屏幕大小的依赖;
- NEVER use hard-coding for pixel value, use dip (density independent pixel);
- 根据density和resolution 为不同的设备准备合适的图片资源。
转自:http://www.moandroid.com/?p=2020
分享到:
相关推荐
本文就介绍了4中Android屏幕自适应解决方案。 一、细说layout_weight 目前最为推荐的Android多屏幕自适应解决方案。 该属性的作用是决定控件在其父布局中的显示权重,一般用于线性布局中。其值越小,则对应的...
当宽度一定时,如满屏,高度自适应 Android代码 继承自imageView
width=100%就可以使得图片宽度充满屏幕,高度自适应
Android系统如何实现UI的自适应.doc
设计师在PS中先设计好UI,然后用这个工具量取像素px 与dp 转换。获得准确的dp值。
一个手机UI开发方面对屏幕自适应的一些讲解和技巧介绍,虽然比较基础,但是对于很多人来说,里面的很多概念还是老搞不清楚。此文档里包括1、基础概念说明;2、Android的三种基本自适应方式;3、一点点必要的代码展现...
android layout自适应是很麻烦的一块。本实例工程,验证了各种分辨率、各种密度下,android 自适应规律。
Python Pyqt5 自适应qtUI 导入本地Excel 包含Python 及UI 源码 ,完美运行。
android自定义dialog嵌套listview自适应屏幕
基于android屏幕的自适应的布局方式。
实现传统的LMS算法,并使用AdaGrad、RMSProp、Adam这三种自适应学习率优化算法对LMS算法进行优化。
2.内容:基于matlab的LMS自适应滤波算法的优化算法仿真,对比AdaGrad、RMSProp、Adam三种自适应学习率优化算法+代码仿真操作视频 3.用处:用于AdaGrad、RMSProp、Adam三种自适应学习率优化算法编程学习 4.指向人群...
android 自适应屏幕 翻转 网络转发 共享给初学者
最新原创音乐上传用户交流手机自适应UI漂亮音乐分享源码音乐网站源码
android应用自适应多分辨率的解决方法
这个是android屏幕自适应的例子,可以在360x480,480x800 480x854 640x360分辨率,是自适应的,不会因为屏幕图片发上变化!
Android自适应分辨率,让程序自动适应屏幕大小
android安卓制作自适应各种手机屏幕大小的app_极品.zip
MATLAB实现 实现传统的LMS算法,并使用AdaGrad、RMSProp、Adam这三种自适应学习率优化算法对LMS算法进行优化 MATLAB实现 实现传统的LMS算法,并使用AdaGrad、RMSProp、Adam这三种自适应学习率优化算法对LMS算法进行...
移动端自适应ui框架。