2011-08-11 60 views
12

我想知道组织Android项目的一些好方法。我正在构建一个小配方应用程序,并已经制作了数十种布局,可绘制资源,菜单等,更不用说Java源代码了。Android:如何组织项目资源?

Android不允许子文件夹的资源,所以有没有办法来组织它们?现在我试图通过命名约定来组织它们(例如 new_list_ingredient_edit),但我想知道是否有更好的方法,因为名称可能会很长并且很麻烦。

与资源(如字符串值)相同的东西。据我了解,我可以创建多个资源文件(例如 strings_new_ingredient.xml, drawables_new_instructions.xml等),但跨文件的所有资源仍然必须具有唯一的名称,这又很麻烦。

+0

你是什么应用程序btw? – trgraglia

+0

@trgraglia这只是一个小小的练习应用程序(实际上不是* *很少)。 –

+0

我的第一个概念验证应用程序也证明是一个野兽......奇怪的是如何工作。祝你好运。 – trgraglia

回答

6

尽管android不允许使用资源文件的子文件夹,但它的确适用于资产,但使用起来要麻烦得多。

一个可能的选择是对所有的字符串使用sql数据库,但这种方法可能工作太多,而且更麻烦。

您的命名约定方法可能是您的最佳选择。如果你愿意的话,你可以将一些分离的单词看作目录,这应该保持足够的组织。

+0

是的,这就是我的预期。至少Eclipse提供重构,所以我可以尝试开发更好的命名约定。 –

4

user864684,

我通常会在我的命名中尝试使用heirarchy。如果它是对话框的布局,我将从dialog_sharing或类似的东西开始。

至于图形,我将从btn或bg或txt或ic_menu开始,具体取决于它们的用途。除此之外,随着您为Android开发更多功能,您只需习惯它。

确保您的驱动器上还有一个支持您的本地资源的文件夹。我模仿android的布局,所以我保持我的图形排序在res/...我的本地驱动器上。我将psd和图形文件保存在那里,然后将png复制到eclipse中。

希望这种帮助。没有真正的标准,但你会选择一种风格。

+0

感谢您的回答。我不确定你的支持文件夹是什么意思......你的意思是计算机上某处应用程序资源的备份吗? –

+0

是的,有项目的文件夹,然后在名称中具有相同名称和'_support'的另一个文件夹。在那里,我模仿res文件夹框架,因此保留所有图形组织,因为一个好的应用程序具有-ldpi,-mdpi,-hdpi,-xlarge等等...由于名称应该与资源相同,所以应用程序可以使用它喜欢从哪个文件夹取决于设备,它更容易与文件夹进行排序。 – trgraglia

0

特别是关于组织可绘制的资源,我会建议选择名称来描述drawable结构上,而不是功能上。

例如,如果您有用作图像占位符的灰色圆形资源,我会避免将其命名为* image_placeholder *。相反,我会将它称为* gray_circle_1 *。

我的建议来自于有多次给出诸如* image_placeholder *之类的名称的经验,忘记了它们实际包含的内容,然后在没有意识到的情况下在单独的资源文件中重写相同的确切内容。

不要做我所做的。