Sobes.tech
Junior — Middle

Je možné a akým spôsobom implementovať Fragment pomocou programového kódu?

sobes.tech AI

Odpoveď od AI

Áno, v Androidu je možné vytvoriť a spravovať Fragment úplne programovo, bez použitia XML rozloženia. Na to je potrebné:

  1. Vytvoriť triedu, ktorá dedí od Fragment.
  2. Prepisovať metódu onCreateView, kde programovo vytvoríte a vrátiť koreňový View.
  3. Pridať Fragment do Activity pomocou FragmentManageru pomocou kódu.

Príklad vytvorenia jednoduchého Fragmentu s View vytvoreným programovo:

class MyFragment : Fragment() {
    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?
    ): View? {
        val textView = TextView(requireContext())
        textView.text = "Programovo vytvorený Fragment"
        textView.gravity = Gravity.CENTER
        textView.textSize = 20f
        return textView
    }
}

Pridanie Fragmentu do Activity programovo:

supportFragmentManager.beginTransaction()
    .replace(R.id.fragment_container, MyFragment())
    .commit()

Týmto spôsobom je možné celý UI a logiku fragmentu vytvoriť a spravovať pomocou kódu bez XML.