2011-08-11 107 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 *之類的名稱的經驗,忘記了它們實際包含的內容,然後在沒有意識到的情況下在單獨的資源文件中重寫相同的確切內容。

不要做我所做的。