Sobes.tech
Back to questions
Junior — Middle
77

Можно ли и каким образом реализовать Fragment с помощью программного кода?

Companies where asked
Мой СкладМой Склад

Answer from AI

sobes.tech AI

Да, Fragment в Android можно создать и управлять им полностью программно, без использования XML-разметки. Для этого нужно:

  1. Создать класс, наследующийся от Fragment.
  2. Переопределить метод onCreateView, где программно создать и вернуть корневой View.
  3. Добавить Fragment в Activity через FragmentManager с помощью кода.

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

class MyFragment : Fragment() {
    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?
    ): View? {
        val textView = TextView(requireContext())
        textView.text = "Программно созданный Fragment"
        textView.gravity = Gravity.CENTER
        textView.textSize = 20f
        return textView
    }
}

Добавление Fragment в Activity программно:

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

Таким образом, весь UI и логика фрагмента могут быть созданы и управляться через код без XML.