2013-02-19 17 views
0

我们想设计一个具体决议布局如下:支持与大小预选赛多个屏幕

三星二重奏:480 X 800的Android版本4.0.4 HTC速度:540 X 960

这样做我们已经创建的布局文件夹为每个如下:

布局w480dp-h800dp 布局w540dp-h960dp

假设,如果我们在三星应用程序运行它duaos应该选择的辣油ts从 layout-w480dp-h800dp文件夹,但它给出错误并且无法启动活动。

的错误是:

android.content.res.Resources $ NotFoundException:资源ID#0x7f030029

这意味着它无法找到该活动所需的布局。 HTC Velocity也一样。

我们做错了什么?

请让我们知道,如果你有任何想法。

回答

0

必须有一些资源尝试删除从绘制一个图像文件,并添加它再次编译项目有问题,应该运行

+0

其实我们已经验证R.java为“资源ID#0x7f030029”,发现它在谈论布局文件。 – Umang 2013-02-19 11:44:13

+0

你试过我说的吗?,相信我是一名教练,我总是说“永远不要相信Eclipse”。 – 2013-02-19 12:26:27

+0

是的,但得到了相同的结果 – Umang 2013-02-19 12:49:00

0

你尝试清理和建设?它通常有所帮助看上去如R发电已损坏

+0

是的,但结果是一样的。 – Umang 2013-02-19 12:09:29

0

你的假设是错误的。 layout-w480dp-h800dp不适用于480x800像素的屏幕。 DP与PX不同。请阅读此http://developer.android.com/guide/practices/screens_support.html

你确定你真的需要如此相似的手机不同的设计?我会说这是毫无意义的。

在我看来最多ü应该区分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。但林不知道这是否会工作...

+0

马克,我们明白了你的观点,但也想考虑高度 – Umang 2013-02-19 12:12:22

+0

你是否仅仅为这两款设备做你的应用?如果是的话,你真的想区分他们计算px到DP应该工作。请记住,当屏幕高度为800像素时 - 由于系统栏的原因,活动的实际工作空间较小。当回答我的问题是NO。然后改变你的设计 - 这两个设备应该有相同的布局,你只需要正确使用dp,重量等。 – Mark 2013-02-19 12:29:21

+0

我们尝试使用res/layout-sw480dp/activity_home.xml并在Samsung二重奏上执行应用程序,但结果相同。 – Umang 2013-02-19 12:29:38

0

你有涉及到您的活动默认布局?我的意思是含有相同名称的布局每个文件夹。

+0

不,我们正在尝试通过定义布局文件夹和尺寸标签来设计Samsung Duos和HTC Velocity的布局。我们也尝试过将像素转换为dp,意思是480 x 800分辨率,它是layout-2720dp-h1200dp,但得到了相同的结果。 – Umang 2013-02-19 12:07:31

+0

你还在试图做一些奇怪的事情......当谷歌说720dp是10英寸的屏幕时,2720dp怎么可能是你的屏幕尺寸(4英寸HTC)。 ?! – Mark 2013-02-19 12:10:12

+0

ohh对不起,这是错字错误 – Umang 2013-02-19 12:19:13