如何在Android项目中定义布局资源的文件夹结构,我知道有一般的文件夹结构,如:
但我想为我的xhdpi和xxhdpi定义单独的横向文件夹吗?
我可以使用layout-land-xhdpi作为我的景观资源,而且android studio预览也没有从layout-land-xhdpi中获取布局资源?
答案 0 :(得分:2)
你没有使用正确的限定符 - 它应该是 large,xlarge,xlarge-land 等,而不是 XXHDPI 等:。
以下是限定符列表(from the docs),因为它们可以工作:
res/layout/my_layout.xml // layout for normal screen size ("default")
res/layout-large/my_layout.xml // layout for large screen size
res/layout-xlarge/my_layout.xml // layout for extra-large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra-large in landscape orientation
res/drawable-mdpi/graphic.png // bitmap for medium-density
res/drawable-hdpi/graphic.png // bitmap for high-density
res/drawable-xhdpi/graphic.png // bitmap for extra-high-density
res/drawable-xxhdpi/graphic.png // bitmap for extra-extra-high-density
res/mipmap-mdpi/my_icon.png // launcher icon for medium-density
res/mipmap-hdpi/my_icon.png // launcher icon for high-density
res/mipmap-xhdpi/my_icon.png // launcher icon for extra-high-density
res/mipmap-xxhdpi/my_icon.png // launcher icon for extra-extra-high-density
res/mipmap-xxxhdpi/my_icon.png // launcher icon for extra-extra-extra-high-density
该文档必须阅读以支持多个屏幕,我会检查它(它会为您节省大量时间)
答案 1 :(得分:2)
我不同意上述答案。 资源可以以各种方式组织 如果你正在使用xlarge,xlarge-land等你根据屏幕尺寸或屏幕分辨率(WXGA等)组织它们 但是,如果您使用xhdpi,xxhdpi等,则根据屏幕密度进行组织。 因此,您希望如何组织资源既是有效的方式,又有自己的用例场景。 如果资源没有反映,那么您在验证或已声明时未使用具有适当屏幕密度(xxhdpi等)的设备 机器人:configChanges ="取向|屏幕尺寸"在您的清单中,通过再次调用onCreate()将禁止活动使用横向模式布局。
答案 2 :(得分:1)
我已经为xhdpi和xxhdpi设备使用了以下限定符并且正常工作,其次如果android studio没有在设计器预览中选择正确的布局,那么请尝试清除缓存,清理项目甚至重启android studio肯定会解决你的问题。
布局土地xhdpi
布局土地xxhdpi