2012-07-26 52 views
1

我正在完成一個應用程序,問題是我有幾個佈局,所有代碼都集中在一個Activity中。 我有5000行代碼,當我不得不解決某些問題時,屁股很痛苦,找到我正在尋找的東西。我想將一個活動分成幾個類。可能嗎?

由於即時通訊在Android開發中真的很新,我找不到將代碼拆分成幾個類的方法。 是否有一種簡單的方法來將一個佈局與一個活動分開?它真的很煩人宣佈每個佈局與他在清單中的相應活動。

感謝您的任何建議。

+3

如果你在一個類中有5000行代碼,那麼你做錯了。 – Magicode 2012-07-26 15:34:05

+0

您能否通過聲明每個佈局來進一步解釋您的意思?如果通過「佈局」來表示xml佈局,則不需要這樣做。你的Android清單中的代碼片段將有助於 – David 2012-07-26 15:36:13

+0

識別代碼中的新對象,並將該邏輯移入新類和新方法中。儘管如此,直到你公開你的體系結構或整個代碼,才能提供幫助。 – hovanessyan 2012-07-26 15:37:16

回答

2

從我的理解,你有一個單一的活動多個佈局?您可以查看Fragments API並將活動劃分爲易於管理的碎片。至於5,000行代碼,試着用靜態訪問把它分成不同的類,或者有沒有辦法可以使用數據對象?你真的不應該在一個班級有5,000行代碼,把它分成不同的班級。

+0

它是我需要的。謝謝。 – Rothariger 2012-07-26 16:40:56

1

那麼,Android的方式是使用活動來保存你的佈局;這是他們打算用於的目的。將程序設計爲面向對象是一個好主意......原因如下:

  1. Java是一種面向對象的編程語言。
  2. 幫助使您的代碼更易於理解,遵循並進行更改。
  3. 讓您的代碼易於OTHERS遵循。
  4. 確保您的應用程序具有凝聚力。

因此,儘可能使您的應用程序儘可能具有內聚性是一個不錯的主意。這將爲您節省很多麻煩。

3

其實它不是Android。但OOP(面向對象編程)的概念。

當然,您可以將一個Activity中的函數分成幾個類。例如,如果你有AsyncTask,你可以在一個Activity之外創建它,如果你有從DB讀取的Adapter,你也可以在一個Activity之外創建它。只需在需要時致電這些班級。而任何其他的一般功能,你也可以在一個活動之外,也許在工具類或其他東西。

相關問題