Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ussr.retr.myapplication.fragment
- import android.os.Bundle
- import androidx.fragment.app.Fragment
- import android.view.LayoutInflater
- import android.view.View
- import android.view.ViewGroup
- import androidx.viewpager2.widget.ViewPager2
- import com.google.android.material.tabs.TabLayout
- import com.google.android.material.tabs.TabLayoutMediator
- import ussr.retr.myapplication.R
- import ussr.retr.myapplication.ViewPagerAdapter
- import ussr.retr.myapplication.tabs.FirstTab
- import ussr.retr.myapplication.tabs.SecondTab
- import ussr.retr.myapplication.tabs.ThirdTab
- class BlankFragment : Fragment() {
- private var viewPager: ViewPager2? = null
- private var tabs: TabLayout? = null
- private var adapter: VPAdapter? = null
- private var tabLayoutMediator: TabLayoutMediator? = null
- override fun onCreateView(
- inflater: LayoutInflater, container: ViewGroup?,
- savedInstanceState: Bundle?
- ): View? {
- // Inflate the layout for this fragment
- return inflater.inflate(R.layout.fragment_blank, container, false)
- }
- override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
- super.onViewCreated(view, savedInstanceState)
- viewPager = view.findViewById(R.id.tabsViewPager)
- tabs = view.findViewById(R.id.Hometabs)
- val fragmentList = mutableListOf(
- FirstTab(),
- SecondTab(),
- ThirdTab()
- )
- adapter = ViewPagerAdapter(childFragmentManager, viewLifecycleOwner.lifecycle,
- fragmentList)
- viewPager.adapter = adapter!!
- tabLayoutMediator = TabLayoutMediator(tabs, viewPager){ tab, position ->
- when (position){
- 0 -> tab.text = "First"
- 1 -> tab.text = "Second"
- 2 -> tab.text = "Third"
- }
- }
- tabLayoutMediator?.attach()
- }
- override fun onDestroyView() {
- super.onDestroyView()
- tabLayoutMediator?.detach()
- tabLayoutMediator = null
- viewPager.adapter = null
- adapter = null
- viewPager = null
- tabs = null
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment