values-sw600dp 平板电脑中无效【安卓调试】

来源:互联网 发布:jsp 收费系统 源码 编辑:程序博客网 时间:2024/05/01 02:20

今天要把安卓程序在平板电脑上调试。针对手机和平板,有两种不同的布局方式。

手机上,因为屏幕较小,所以列表视图和详细视图分开显示(先进入列表视图,点击其中一项然后进入详细视图);

平板上,因为屏幕较大,所以列表视图和详细视图同时显示(左边点击列表视图中的一项,就在右边的详细视图中展示),预期效果图如下:



那通过什么来区分手机和平板的不同视图呢?答案是不同的layout xml文件。在values文件夹中用refs.xml来表示手机视图,而用另外用values-sw600dp文件夹中的refs.xml来表示平板视图。

可是实际运行效果不对,平板上显示的仍然是手机视图,既只有列表视图:



为什么平板上没有显示为平板设置的视图呢?难道是values-sw600dp这个文件夹不被识别?

折腾了一下午,终于找到了答案,原来是文件夹组织的层次错了,原来的文件夹结构如下:



可能是照着书本进行的缘故,一抹黑钻了进去,自己也没怎么思考,就吧value-sw600dp这个文件夹放在了values文件夹里面,这就是问题所在,它们两个不应该是父子关系,而是并列关系,重新调整values-sw600dp文件夹的位置,把它放在res文件夹下,和values文件夹并列,如下图:



然后重新运行,平板电脑上九显示了正确的视图,问题解决。




总结:照着书做的时候,也要保持清醒的头脑和自己的思考,用常理和以前的经验(比如layout和layout-land就是并列的)去思考。


1 0
原创粉丝点击