Android开发过程中,经常会遇到像layout-sw600dp, values-sw600dp这样的文件夹,以前没用到,不怎么关注,所以一直一知半解的。现在要用到了,才去了解他们的用法和区别。其实,他们和drawable-hdpi/ drawable-mdpi等的使用类似,都是为了实现适配各种Android手机屏幕而使用的,只是drawable用来管理不同大小图片资源,layout用来管理不同布局,values用来管理不同大小的值。
下面就先来看看layout-sw600dp、layout-w600dp和layout-h600dp的区别~~
这里的sw代表smallwidth的意思,当你的屏幕的绝对宽度大于600dp时,屏幕就会自动调用layout-sw600dp文件夹里面的布局。
注意:这里的绝对宽度是指手机的实际宽度,即与手机是否横屏没关系,也就是手机较小的边的长度。
当你的屏幕的相对宽度大于600dp时,屏幕就会自动调用layout-w600dp文件夹里面的布局。
注意:这里的相对宽度是指手机相对放置的宽度;即当手机竖屏时,为较小边的长度;当手机横屏时,为较长边的长度。
与layout-w600dp的使用一样,只是这里指的是相对的高度。
当你的屏幕的相对高度大于600dp时,屏幕就会自动调用layout-w600dp文件夹里面的布局。
注意:这里的相对高度是指手机相对放置的高度;即当手机竖屏时,为较长边的长度;当手机横屏时,为较小边的长度。但这种方式很少使用,因为屏幕在相对高度上,即在纵向上通常能够滚动导致长度变化,而不像横向那样基本固定,因而这个方法灵活性差,google官方文档建议尽量使用这种方式。
values与上面介绍的layout的使用方式是一样的,这里不作详细介绍~~
至于上面介绍的内容如何在项目中使用,怎样运用以达到适配各种手机的效果,本人会在下一篇GridView的适配中提到,大家可以去参考~~