一、Fragment 概念
Fragment也叫爲“片段”,“碎片”,它可以表示Activity中的行爲或用戶界面部分。我們可以在一個Activity中用多個Fragment組合來構建多窗格的UI,以及在多個Activity中重複使用某個Fragment。它有自己的生命週期,能接受自己的輸入,並且可以在 Activity 運行時添加或刪除Fragment。
Fragment是Android 3.0 (Honeycomb)被引入的。主要目的是爲了給大屏幕(如平板電腦)上更加動態和靈活的UI設計提供支持。由於平板電腦的屏幕比手機的屏幕大很多,因此可用於組合和交換的UI組件的空間更大,利用Fragment實現此類設計的時,就無需管理對視圖層次結構的複雜更改。
當前主要適用於大屏佈局以及App框架tabbar的佈局。
1. Fragment在大屏上使用示例:
比如在phone上用list view展示的新聞列表,每點擊一個都會進入一個詳情頁面,如下圖:
但是,在pad上等大屏上就會把新聞標題拉長,後邊會留出空白,很不好看。如下圖:
所以就引入了fragment碎片化的概念,對於這種需求,更好的辦法是在一個activity中引入新聞列表和詳情放在兩個碎片。如下圖:
2. Fragment在app上使用示例:
現在主流的APP中,基本的架構也都是一個主頁,然後每個Tab項用Fragment做佈局,不同選項做切換,使用起來也方便。
二、使用:
創建fragment時只需要繼承與Fragment即可,其他用法和activity的一樣。
需要注意的一點是findviewbyid時需要用view.findviewbyid,稍微區別與activity。