Sobes.tech
Junior — Middle

Czy można i w jaki sposób zaimplementować Fragment za pomocą kodu programistycznego?

sobes.tech AI

Odpowiedź od AI

Tak, w Androidzie można utworzyć i zarządzać Fragmentem całkowicie programowo, bez użycia układu XML. Aby to zrobić:

  1. Utwórz klasę dziedziczącą po Fragment.
  2. Nadpisz metodę onCreateView, w której programowo utworzysz i zwrócisz główny widok.
  3. Dodaj Fragment do Activity za pomocą FragmentManager w kodzie.

Przykład utworzenia prostego Fragmentu z widokiem stworzonym programowo:

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

Dodanie Fragmentu do Activity programowo:

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

W ten sposób cały interfejs użytkownika i logika fragmentu mogą być tworzone i zarządzane za pomocą kodu bez XML.