Lekce 5 - Android fragmenty - Komunikace fragmentu s aktivitou
V minulé části, Android fragmenty - XML návrh pro obousměrnou komunikaci, jsme vytvořili XML návrh vzhledu nového fragmentu a nové aktivity k ukázce komunikace mezi fragmentem a aktivitou.
V dnešním tutoriálu budeme pokračovat v práci na našem ukázkovém
projektu s fragmenty tím, že vytvoříme Java třídu nového fragmentu
FragmentForCommunication
. XML návrh vzhledu tohoto fragmentu máme
hotový z dřívějška. Také si něco řekneme o komunikaci fragmentu
s aktivitou, konkrétně o komunikaci směrem z fragmentu do
aktivity. Java kód fragmentu dnes nedokončíme celý, protože zatím
nemáme vytvořenou třídu aktivity, ve které bude nový fragment umístěn.
Java kódy fragmentu a jeho mateřské aktivity jsou vzájemně provázané.
Proto některé části Java kódu fragmentu doplníme až po vytvoření
třídy aktivity ActivityCommunication
.
Než se pustíme do práce na třídě fragmentu
FragmentForCommunication
, vysvětlíme si, jak v Java kódu
fragmentu získat přístup k public
metodám a proměnným
aktivity.
Získání přístupu fragmentu k metodám aktivity.
K tomuto účelu potřebujeme ve fragmentu získat kontext aktivity. Ten lze získat dvěma způsoby:
- Voláním metody
getActivity()
- V přepsané metodě
onAttach()
Metoda getActivity()
Tuto metodu třídy Fragment
, vracející objekt typu
Activity
, lze zavolat kdekoliv v Java kódu
fragmentu. Na získaném objektu je nutné provést typovou
konverzi. Z objektu typu Activity
musíme vytvořit objekt
třídy naší aktivity, aby bylo možné přistupovat k jejím
public
metodám a proměnným.
Přepsání metody
onAttach()
Jedná se o metodu životního cyklu fragmentu a je volána ve chvíli, kdy je fragment připojen k aktivitě:
@Override public void onAttach(@NonNull Context context) { super.onAttach(context); }
Na metodě onAttach()
si můžeme všimnout
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Před koupí tohoto článku je třeba koupit předchozí díl
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V této lekci napíšeme Java kód fragmentu `FragmentForCommunication`, který bude součástí příkladu obousměrné komunikace mezi fragmentem a aktivitou.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.