Назад к вопросам
Альфа Капитал
Junior — Middle
76
Возможна ли передача аргументов при создании экземпляра Fragment в Android?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Да, передача аргументов при создании экземпляра Fragment в Android возможна и рекомендуется делать это через Bundle. Для этого обычно создают статический метод newInstance, который принимает необходимые параметры, упаковывает их в Bundle и устанавливает в Fragment через setArguments().
Пример:
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);
// Используем param
}
}
}
Такой подход гарантирует, что при пересоздании фрагмента система сможет восстановить переданные параметры.