Junior — Middle
Je možné pri vytváraní inštancie Fragment v Android odovzdať argumenty?
sobes.tech AI
Odpoveď od AI
Áno, odovzdanie argumentov pri vytváraní inštancie Fragmentu v Android je možné a odporúča sa to robiť cez Bundle. Zvyčajne sa vytvorí statická metóda newInstance, ktorá prijíma potrebné parametre, zabalí ich do Bundle a nastaví ich vo Fragment pomocou setArguments().
Príklad:
public class MyFragment extends Fragment {
private static final String ARG_PARAM = "param";
public static MyFragment newInstance(String param) {
MyFragment fragment = new MyFragment();
Bundle args = new Bundle();
args.putString(ARG_PARAM, param);
fragment.setArguments(args);
return fragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
String param = getArguments().getString(ARG_PARAM);
// Použitie param
}
}
}
Tento prístup zabezpečuje, že pri opätovnom vytvorení fragmentu systém bude môcť obnoviť odovzdané parametre.