Android中利用工廠模式實現單Activity多Fragment實現方式

設計的初衷:

????????在Android中會出現大量的界面效果,如果我們每個界面都去創(chuàng)建一個Activity的話,就需要在Android的AndroidManifest.xml里邊注冊大量的Activity,這樣會導致看起來的會相當的冗雜。

????????一個Activity多個Fragment去構建一個App的整體架構,這樣的好處多多,所以我們可以利用簡單工廠設計模式搭建一個多Fragment公用同一個Activity,這樣只需要注冊一次Activity,而且使用Fragment做視圖,組裝更靈活,渲染更快,也可以統(tǒng)一修改加載動畫。

實現方式:

1.創(chuàng)建一個FragmentID類,通過這個ID創(chuàng)建對應的Fragment實例

FragmentID

2.創(chuàng)建一個Fragment實例生產工廠類,根據FragmentID生成對應的實例,該類有兩個靜態(tài)方法,分別創(chuàng)建無參數和有參數傳遞的Fragment實例,參數用Bundle來傳遞

FragmentFactory

3.創(chuàng)建一個宿主Activity,該Activity同時又會有兩個靜態(tài)方法,分別來實現有參數和無參數Fragment的創(chuàng)建

FgtActivity

根據bundle對象是否為null來調用FragmentFactory對應的方法。

4.頁面展示的時候直接調用FgtActivity對應的靜態(tài)方法即可。

MainActivity

這樣就可以實現同一個Activity管理多個Fragment的整體項目結構了,大家可以參考一下。

Demo地址:https://github.com/Garen-93/FactoryPattern

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,098評論 25 709
  • 用兩張圖告訴你,為什么你的 App 會卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 14,025評論 2 59
  • Fragment概述 Fragment是Activity中用戶界面的一個行為或者說是一部分。主要是支持大屏幕上動態(tài)...
    wangling90閱讀 11,755評論 5 75
  • 1.吸煙有害健康,有害就有害吧,反正當今社會有害的東西多的去了,坐飛機還能墜機呢?難道就不坐飛機了嘛 但是如果在煙...
    乘格帆閱讀 508評論 2 5
  • 我給你瘦落的街道、絕望的落日、荒郊的月亮。 我給你一個久久地望著孤月的人的悲哀。 我給你我已死去的祖輩,后人們用大...
    丹青藏煌閱讀 210評論 0 1

友情鏈接更多精彩內容