关于同时支持手机(只竖屏),特定pad(支持横竖屏)的布局方案: 场景: 前期开发了一版手机版的app(只需要竖屏),布局文件都写在layout资源文件中。后期客户要求在不另外开发的情况下,要兼容客户提供的一个pad, 这个pad分辨率为1920 * 1200。pad要支持横竖屏。 因为要求在同一个工程中,所以就考虑到根据不同分辨率使用不同的布局文件。做法如下 1:因为手机只能竖屏,所以使用默认的layout,将所有的布局放在这个下面。 2:针对于客户提供的pad,为其竖屏提供了一套布局,所以新建了一个layout-port-1920x1200的布局文件夹,所有布局放在这个里面 3:针对于客户提供的pad,为其横屏提供了一套布局,所以新建了一个layout-land-1920x1200的布局文件夹,所有布局放在这个里面 现在我的项目分别就有了如下3个资源布局文件夹 layout layout-port-1920x1200 layout-land-1920x1200 接下来进行测试: 第一步:我创建了一个MainAcitvity.java,然后随之就有一个active_main.xml 第二步:我把这个active_main.xml分别拷贝到上面的三个文件夹中(不改名) 第三步:对这三个文件夹中的active_main.xml分别使用了一个用来区分的背景色。 layout |--active_main.xml 背景色为黄色 layout-port-1920x1200 |--active_main.xml 背景色为绿色 layout-land-1920x1200 |--active_main.xml 背景色为蓝色 下面通过设备进行验证: 1:将app放在一个手机上运行,结果界面为黄色。 2:将app放在一个我自定义的1920*1200的模拟器上运行(竖屏情况下),结果界面为绿色 3:将app放在一个我自定义的1920*1200的模拟器上运行(横屏情况下),结果界面为蓝色 通过上面试验,证实app在运行时,在检测有与之对应的分辨率的layout文件夹时,会调用相应文件夹下的布局文件 如果找不到,则会使用默认的layout文件夹下布局文件
关于同时支持手机和pad横竖屏android布局适配
最新推荐文章于 2024-06-16 17:35:36 发布