NestedScrollView не листается в TabLayout, находящийся в Bottom Sheet
В Bottom Sheet находится TabLayout, во вкладках находятся 2 NestedScrollView. Проблема заключается в том, что пр открытии Bottom Sheet NestedScroll прокручивается, но при переходе во 2 вкладку 2 NestedScroll не прокручивается. Проблема проявляется только при нахождении TabLayout'а в BottomSheet. Разметка TabLayout в BottomSheet:
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".BlankFragment1">
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/re"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent">
<com.google.android.material.tabs.TabLayout
android:id="@+id/asd"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent"
app:tabMode="fixed">
<com.google.android.material.tabs.TabItem
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="первый"/>
<com.google.android.material.tabs.TabItem
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Второй" />
</com.google.android.material.tabs.TabLayout>
</com.google.android.material.appbar.AppBarLayout>
<androidx.viewpager.widget.ViewPager
android:id="@+id/viewPager"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/re"/>
</androidx.constraintlayout.widget.ConstraintLayout>
BottomSheet
class bottomSheetFragment: BottomSheetDialogFragment() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
return inflater.inflate(R.layout.fragment_blank1,container,false)
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
val adapter = viewPagerAdapter(childFragmentManager)
adapter.addFragment(BlankFragment2(),"BlankFragment2")
adapter.addFragment(BlankFragment3(),"BlankFragment3")
val asd = view.findViewById<ViewPager>(R.id.viewPager)
val fd = view.findViewById<TabLayout>(R.id.asd)
asd.adapter= adapter
fd.setupWithViewPager(asd)
}
}
viewPagerAdapter
class viewPagerAdapter(supportFragmentManager: FragmentManager)
:FragmentPagerAdapter(supportFragmentManager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) {
private val mFragmentList = ArrayList<Fragment>()
private val mFragmentTitleList = ArrayList<String>()
override fun getCount(): Int {
return mFragmentList.size
}
override fun getItem(position: Int): Fragment {
return mFragmentList[position]
}
fun addFragment(fragment:Fragment,title:String){
mFragmentList.add(fragment)
mFragmentTitleList.add(title)
}
}