Guest User

Untitled

a guest
Nov 29th, 2021
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.14 KB | None | 0 0
  1. package ussr.retr.myapplication.fragment
  2.  
  3. import android.os.Bundle
  4. import androidx.fragment.app.Fragment
  5. import android.view.LayoutInflater
  6. import android.view.View
  7. import android.view.ViewGroup
  8. import androidx.viewpager2.widget.ViewPager2
  9. import com.google.android.material.tabs.TabLayout
  10. import com.google.android.material.tabs.TabLayoutMediator
  11. import ussr.retr.myapplication.R
  12. import ussr.retr.myapplication.ViewPagerAdapter
  13. import ussr.retr.myapplication.tabs.FirstTab
  14. import ussr.retr.myapplication.tabs.SecondTab
  15. import ussr.retr.myapplication.tabs.ThirdTab
  16.  
  17. class BlankFragment : Fragment() {
  18.  
  19. private var viewPager: ViewPager2? = null
  20. private var tabs: TabLayout? = null
  21. private var adapter: VPAdapter? = null
  22. private var tabLayoutMediator: TabLayoutMediator? = null
  23.  
  24. override fun onCreateView(
  25. inflater: LayoutInflater, container: ViewGroup?,
  26. savedInstanceState: Bundle?
  27. ): View? {
  28. // Inflate the layout for this fragment
  29. return inflater.inflate(R.layout.fragment_blank, container, false)
  30. }
  31.  
  32. override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
  33. super.onViewCreated(view, savedInstanceState)
  34.  
  35. viewPager = view.findViewById(R.id.tabsViewPager)
  36. tabs = view.findViewById(R.id.Hometabs)
  37.  
  38. val fragmentList = mutableListOf(
  39. FirstTab(),
  40. SecondTab(),
  41. ThirdTab()
  42. )
  43.  
  44. adapter = ViewPagerAdapter(childFragmentManager, viewLifecycleOwner.lifecycle,
  45. fragmentList)
  46. viewPager.adapter = adapter!!
  47.  
  48. tabLayoutMediator = TabLayoutMediator(tabs, viewPager){ tab, position ->
  49. when (position){
  50. 0 -> tab.text = "First"
  51. 1 -> tab.text = "Second"
  52. 2 -> tab.text = "Third"
  53. }
  54. }
  55. tabLayoutMediator?.attach()
  56. }
  57.  
  58. override fun onDestroyView() {
  59. super.onDestroyView()
  60. tabLayoutMediator?.detach()
  61. tabLayoutMediator = null
  62. viewPager.adapter = null
  63. adapter = null
  64. viewPager = null
  65. tabs = null
  66. }
  67.  
  68. }
Advertisement
Add Comment
Please, Sign In to add comment