2014-10-06 33 views
10

我在Android活動中使用Fragments的所有原因都與在同一屏幕上顯示多個類/視圖,封裝多個邏輯組件等有關。有一個片段的活動的任何一點?

考慮到所有這些,片段只有在你使用其中很多時纔有用。

是這樣嗎?在活動中是否只使用一個片段?

我現在問一下,因爲我在Android Studio上看到了一個選項來做到這一點,而且我想知道關鍵是什麼。

Android Studio New Activity with Fragment

+0

沒有匹配的意義,你是對的。但是,您可以在其他活動中重複使用該片段 – GVillani82 2014-10-06 10:03:55

回答

4

從我個人的意見,我會說是的

原因有以下幾點:

  • 假設你所熟悉的片段,創造一個片段是幾乎沒有任何額外的工作加上有以下好處
  • 片段可以很容易地在其他地方重複使用(可能是其他的活動,有更多的碎片,此外,碎片不一定需要用完整個屏幕)。
  • 活動轉換更昂貴,片段轉換更復雜。
  • 片段動畫框架更好(在可用性和性能方面)。
  • 我總是喜歡將Activity的數量保持在最小,這使得AndroidManifest.xml變得簡潔而乾淨。
  • 用戶界面分成碎片會導致更乾淨的代碼結構和更簡單的代碼維護。

根據谷歌編碼準則,最好的做法是創建儘可能少的活動,然後創建多個碎片,而不是在活動中切換。

+1

您的最後兩點看起來相當薄弱 - 第一個純粹是個人偏好。關於第二個問題 - 你能否解釋一下如何添加一個額外的圖層使代碼更清晰,結構更好或更容易維護。關於你最後的評論 - 是的,建議不要創建額外的活動,但我們只討論一個片段的活動,所以這個論點不適用。 – Okas 2014-10-06 10:11:46

+0

@Okas,有更多的活動使AndroidManifest混亂,你不需要聲明Fragments。 – EpicPandaForce 2014-10-06 10:37:34

+1

@Zhuiden,在開始混淆AndroidManifest之前,你真的需要做很多活動。 :) – Okas 2014-10-06 10:53:42

0

優點:

- >可重用的代碼

  • 容易的任何模塊中再次利用它
  • 易於調試

- >把手方向改變更好比使用setRetainInstance的活動(true)

- >很大的幫助,當規模在未來應用的multipane佈局還是多屏支持

缺點:

- >小的開銷和時間,如果你不熟悉的片段消耗

+0

幸運的是,片段不是那**複雜的,基本上只是你在'onCreate()'中有什麼會在'onCreateView()'中增加兩行。 – EpicPandaForce 2014-10-06 10:28:26

+0

@Zhuinden:是的,這很簡單。我們只需要正確處理片段管理器和後臺堆棧。 – 2014-10-06 10:34:50

1

這取決於,如果你打算在另一個活動中使用這個片段,那麼你有一個「點」,也許將來你可以在另一個活動中重用它,但是在例如啓動畫面的情況下,它不會沒有一點意義。所有都取決於你想要給你的應用程序的用途。

相關問題