Sobes.tech
Junior — Middle

Как се предават параметри при инициализация на Fragment в Android?

sobes.tech AI

Отговор от 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 и ги задава във фрагмента. Това е стандартният и препоръчителен начин за предаване на параметри към фрагменти.