Atasi FragmentPagerAdapter Deprecated

Sejak rilis versi terbaru API 27 FragmentPagerAdapter saya menjadi deprecated, sepertinya pengembang Android SDK sedang gencar-gencarnya melakukan perombakan dan penyempurnaan sistem mereka. Oke, itu bagus, tapi yang menjadi masalah adalah sosialisasi mereka kurang sehingga kami harus berkonsultasi kepada pihak lain diluar platform mereka, salah satunya di forum ini.

Di beberapa kasus, saya paham tentang penerapan super(fragmentManager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT), lalu apakah saya terpaksa menggunakan ini?, saya tidak tahu efeknya terhadap kode saya yang lain, dan ketidaktahuan ini bisa fatal jika saya paksakan.

Baik, mari kita sentuh gambaran kode saya saat itu.

import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentPagerAdapter

Sebelumnya tidak masalah, tapi setelah melakukan update FragmentPagerAdapter di class MyViewPagerAdapter(manager: FragmentManager) : FragmentPagerAdapter(manager){ menjadi tercoreng namanya.

Apakah ada solusinya untuk kasus deprecated semacam ini.

class MyViewPagerAdapter(manager: FragmentManager) : FragmentPagerAdapter(manager){
        private val fragmentList : MutableList<androidx.fragment.app.Fragment> = ArrayList()
        private val titleList : MutableList<String> = ArrayList()

        override fun getItem(position: Int): androidx.fragment.app.Fragment {
            return fragmentList[position]
        }

        override fun getCount(): Int {
            return fragmentList.size
        }

        fun addFragment(fragment: androidx.fragment.app.Fragment, title: String){
            fragmentList.add(fragment)
            titleList.add(title)
        }

        override fun getPageTitle(position: Int): CharSequence? {
            return titleList[position]
        }
    }

Solusi

Simple saja Dev, ganti

class MyViewPagerAdapter(manager: FragmentManager) : FragmentPagerAdapter(manager)

Menjadi seperti ini

class MyViewPagerAdapter(manager: FragmentManager) : FragmentPagerAdapter(manager, FragmentPagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT)

Kesimpulannya adalah saya menganggap bahwa MyViewPagerAdapter tidak membutuhkan configurasi nilai tertentu.


Post a Comment

Previous Next

نموذج الاتصال