Sobes.tech
Junior — Middle

Արդյո՞ք հնարավոր է և ինչպես իրականացնել Fragment-ը ծրագրային կոդով։

sobes.tech AI

Պատասխան AI-ից

Այո, Android-ում հնարավոր է ամբողջությամբ ծրագրային կերպով ստեղծել և կառավարել Fragment-ը, առանց 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-ի։