2011-01-12 62 views
4

我正在为Android创建一款纸牌游戏。我试图想出一个可以让游戏在所有屏幕尺寸和密度上播放的布局。适用于多种屏幕尺寸/密度的灵活的android布局

我已阅读:http://developer.android.com/guide/practices/screens_support.html

不过,我仍然困惑就做到这一点的最好办法。

对于这个游戏,我需要在横向模式下布置5个列。在5列以上的地方添加了额外的卡片。在这方面它与纸牌非常相似......但我只需要5列而不是7。

什么尺寸的卡片图像应该在ldpi,mdpi和hdpi中?

应该使用什么类型的布局(表格,线性,相对)?

我应该为不同的屏幕尺寸(小,普通,大)创建不同的布局吗?

您可以指向我的任何示例?

+1

如果您还没有阅读,您还应该阅读http://developer.android.com/guide/practices/screens_support.html#screen-independence。对于可缩放的光栅图像,您可能想使用[`NinePatch`](http://developer.android.com/reference/android/graphics/NinePatch.html)。 – 2011-01-12 14:55:17

+0

它应该帮助你: http://stackoverflow.com/questions/10853808/something-going-wrong-with-drawbitmap-with-source-and-dest-rectangles/10854647#10854647 – Nolesh 2012-08-28 14:47:52

回答

0

Android的文档有关于这个问题的一个很大的指导:

Supporting Multiple Screens

他们引进广义的尺寸和密度,并显示不同的资源,如何动态地为不同的屏幕加载。我觉得你可以摆脱所有屏幕尺寸的一种布局,我认为RelativeLayout可以很好地工作(在大多数情况下)特别是像纸牌游戏那样复杂的事情。当我想要水平对齐按钮/文本时,我主要在RelativeLayouts中使用LinearLayouts。

8

首先,我很抱歉我的英语不够好。 您应该将您的资源分为几个文件夹(基于屏幕大小),例如,根据不同的资源制作不同的布局。你可以象下面这样:

1.drawable

-drawable-hdpi 

-drawable-mdpi 

-drawable-ldpi 

2.layout

--layout-hdpi 

--layout-mdpi 

--layout-ldpi 

定制您的资源,每个屏幕尺寸,它使您的应用程序适用于许多设备。