Sobes.tech
Back to questions
Junior — Middle
70

Каким образом можно передать параметры при инициализации Fragment в Android?

Companies where asked
Центр Финансовых Технологий

Answer from AI

sobes.tech AI

Параметры при инициализации Fragment в Android обычно передаются через объект Bundle, который устанавливается в Fragment с помощью метода setArguments(). Это делается для того, чтобы параметры сохранялись при пересоздании фрагмента системой.

Пример создания фрагмента с параметрами:

class MyFragment : Fragment() {
    companion object {
        private const val ARG_PARAM = "param"

        fun newInstance(param: String): MyFragment {
            val fragment = MyFragment()
            val args = Bundle()
            args.putString(ARG_PARAM, param)
            fragment.arguments = args
            return fragment
        }
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val param = arguments?.getString(ARG_PARAM)
        // Используйте param по необходимости
    }
}

Таким образом, при создании фрагмента вызывается статический метод newInstance, который упаковывает параметры в Bundle и устанавливает их в фрагмент. Это стандартный и рекомендуемый способ передачи параметров во фрагменты.