Sobes.tech
Назад к вопросам
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
        }
    }
}

Такой подход гарантирует, что при пересоздании фрагмента система сможет восстановить переданные параметры.