This is an old revision of the document!
În laboratoarele precedente ați învățat despre activități, cum funcționează acestea, și cum le putem conecta între ele. Astăzi vom lucra cu Fragmente. În Android, un Fragment este o clasă ce reprezintă o componentă independentă ce se execută în contextul unei activități.
De ce folosim fragmente? Fragmentele au fost introduse începând cu Android 3.0 (API level 11), iar scopul lor este de a facilita crearea de interefețe ce se pot adapta diferitelor tipuri de ecrane.
Mai pe scurt, un fragment poate fi văzut ca o porțiune de interfață ce poate fi refolosită în cadrul mai multor activități sau pentru o poziționare diferită a aceleiași interfețe - dacă folosim alte tipuri de ecrane (exemplu în figura de mai jos).
Deși se execută în cadrul contextului unei activități, fragmentele au propriul lor ciclu de viață, propriile evenimente și pot fi adăugate sau șterse, chiar dacă activitatea de care aparține este în curs de execuție. Ciclul de viață al fragmentului este dependent de cel al activității sale. De aceea, dacă o activitate apelează onPause(), atunci toate fragmentele sale vor avea această stare.
Pentru a scrie un fragment, trebuie să creați o clasă care să moștenească clasa Fragment. Așa cum ați văzut în laboratorul despre activități, puteți suprascrie diverse metode (descrise mai sus) care pot modifica un fragment de-a lungul ciclului său de viață.
public class MyFirstFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.my_first_fragment, container, false); } }
În exemplul de mai sus am creat o clasă de tip Fragment, în care putem observa că am suprascris metoda onCreateView(). Așa cum am spus mai sus, această metodă este folosită pentru a crea componentele interfeței(din fișierul .xml) corespunzătoare fragmentului.
Parametrii acestei metode sunt următorii: