在我的应用程序中,我必须支持540x960屏幕。
我创建了一个名为drawable-540x960
的目录,用于包含此屏幕的所有图形项目。
但是我收到了这个错误:invalid resource directory name drawable-540x960
这个名字出了什么问题?
谢谢,
的Eyal。
答案 0 :(得分:8)
实际上答案很简单:
drawable-hdpi-960x540
1)您必须指定密度 2)你必须先命名高度
答案 1 :(得分:3)
我尝试过不同的模拟器......最后我成功了。高度应该是第一个值。
res/layout-long-port-hdpi-500x300/layout.xml (For testing i created this emulator)
res/layout-long-port-hdpi-960x540/layout.xml (For Motorola Droid Razr, Motorola Droid Bionic, etc)
res/layout-long-port-hdpi-800x480/layout.xml (For Nexus)
答案 2 :(得分:3)
我很遗憾地说,但是如果你有一些其他类似的drawable-mdpi或drawablae-xhdpi或drawable-xxhdpi或drawable-hdpi,那么s.krueger的解决方案将无效。它不会采用drawable-hdpi-960x540。
您必须根据像素密度和屏幕尺寸命名drawable。计算在这里......
dpi = sqrt(540 ^ 2 + 960 ^ 2)/ 4.3“(器件尺寸)= ~256 dp = px /(dpi / 160)= 540 /(dpi / 160)= 330
drawable将命名为drawable-sw330dp。我测试了这个。这很好用。其他drawable也没问题。布局将是layout-sw330dp
或者你可以通过drawable-sw540p试试这个。我还没有测试过。但我想这会很好。布局将是layout-sw540p
答案 3 :(得分:2)
Android没有识别drawable-540x960,因为它是一个无效的大小限定符
你可能想看看支持不同屏幕的android指南 http://developer.android.com/guide/practices/screens_support.html#NewQualifiers
以下是一些有效标识符的示例
res/layout-sw600dp/main_activity.xml # For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml # For 10” tablets (720dp wide and bigger)
答案 4 :(得分:0)
实际上,您为屏幕提供了错误的目录名称。您可以从开发者网站参考此处https://developer.android.com/guide/practices/screens_support.html#NewQualifiers
该网站中的有关屏幕尺寸的资格,请参阅表号:2
你可以找到一行:
If the available height is a concern for you, then you can do the same using the h<N>dp qualifier. Or, even combine the w<N>dp and h<N>dp qualifiers if you need to be really specific.
对于指定使用屏幕尺寸540x960,您需要添加如下所示的布局,这是定义用于该xml布局的宽度和高度的有效方法。
res/layout-w540dp-h960dp/any layout which you need put in side this folder