MyPager2Adapter.kt 813 B

1234567891011121314151617181920212223242526
  1. package com.android.basiclib.adapter
  2. import androidx.fragment.app.Fragment
  3. import androidx.fragment.app.FragmentManager
  4. import androidx.lifecycle.Lifecycle
  5. import androidx.viewpager2.adapter.FragmentStateAdapter
  6. import com.android.basiclib.utils.log.MyLogUtils
  7. class MyPager2Adapter(
  8. fm: FragmentManager,
  9. lifecycle: Lifecycle,
  10. private val fragments: List<Fragment>
  11. ) : FragmentStateAdapter(fm, lifecycle) {
  12. override fun getItemCount(): Int = fragments.size
  13. override fun createFragment(position: Int): Fragment {
  14. return fragments[position]
  15. }
  16. override fun getItemId(position: Int): Long {
  17. val name = fragments[position].javaClass.simpleName+ position
  18. val toLong = name.hashCode().toLong()
  19. MyLogUtils.w("getItemId:$toLong")
  20. return toLong
  21. }
  22. }