我们希望为特定分辨率设计布局,如下所示:
Samsung Duos:480 X 800 Android 4.0.4 HTC Velocity:540 X 960
为此,我们为每个创建了布局文件夹,如下所示:
布局w480dp-h800dp 布局w540dp-h960dp
假设如果我们在三星duaos上运行应用程序,它应该选择布局 layout-w480dp-h800dp文件夹但它出错并无法启动活动。
错误是:
android.content.res.Resources $ NotFoundException:资源ID#0x7f030029
这意味着它无法找到活动所需的布局。 HTC Velocity也是如此。
我们做错了吗?
如果您有任何想法,请告诉我们。
答案 0 :(得分:0)
一定是一个问题,有些资源尝试从drawable删除图像文件并再次添加它构建应该运行的项目
答案 1 :(得分:0)
您是否尝试过清洁和构建?它通常有助于看起来R代被破坏
答案 2 :(得分:0)
你的假设是错误的。 layout-w480dp-h800dp不适用于480x800像素屏幕。 DP与PX不同。请阅读此http://developer.android.com/guide/practices/screens_support.html。
你确定你真的需要为这么类似的手机设计不同的设计吗?我会说这没有意义。
在我看来,U最多应区分3种类型的设备。
res/layout/main_activity.xml # For handsets (smaller than 600dp available width)
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)
如果你仍想做你想做的事,你可以试试px而不是dp。但我不确定这是否有效...
答案 3 :(得分:0)
您是否有与您的活动相关的默认布局?我的意思是每个文件夹都包含相同名称的布局。