Android Jetpack navigationUI,如何传递数据以查看寻呼机片段
我是第一次使用Android Jetpack navigationUI,如何传递数据以查看寻呼机片段,android,navigation,android-viewpager,android-jetpack,Android,Navigation,Android Viewpager,Android Jetpack,我是第一次使用导航UI架构组件 我正在尝试将ViewPager与它一起使用。我想将参数传递给添加到viewpager 我没有找到任何与viewpager 我的代码 class StoriesPagerAdapter(fragmentManager: FragmentManager?) :FragmentPagerAdapter(fragmentManager){ private val sections= arrayListOf("science","technology","
导航UI架构组件
我正在尝试将ViewPager与它一起使用。我想将参数传递给添加到viewpager
我没有找到任何与viewpager
我的代码
class StoriesPagerAdapter(fragmentManager: FragmentManager?)
:FragmentPagerAdapter(fragmentManager){
private val sections= arrayListOf("science","technology","business","world","movies","travel")
override fun getItem(position: Int): Fragment {
val bundle=Bundle()
bundle.putString("section",sections[position])
Navigation.createNavigateOnClickListener(R.id.action_masterFragment_to_timesListFragment,bundle)
return TimesListFragment()
}
override fun getCount(): Int {
return sections.size
}
override fun getPageTitle(position: Int): CharSequence? {
return sections[position]
}
}
我的导航图
- 主片段->包含表格布局、ViewPager
- 通过
FragmentPagerAdapter
- ListFragment->显示基于
部分
键的api响应
- 细节碎片
class StoriesPagerAdapter(fragmentManager: FragmentManager?)
:FragmentPagerAdapter(fragmentManager){
private val sections= arrayListOf("science","technology","business","world","movies","travel")
override fun getItem(position: Int): Fragment {
return TimesListFragment().newInstance(sections)
}
override fun getCount(): Int {
return sections.size
}
override fun getPageTitle(position: Int): CharSequence? {
return sections[position]
}
}
您必须像旧方法一样使用导航体系结构管理viewPager,根据此您可以在片段实例中传递数据:
class StoriesPagerAdapter(fragmentManager: FragmentManager?)
:FragmentPagerAdapter(fragmentManager){
private val sections= arrayListOf("science","technology","business","world","movies","travel")
override fun getItem(position: Int): Fragment {
return TimesListFragment().newInstance(sections)
}
override fun getCount(): Int {
return sections.size
}
override fun getPageTitle(position: Int): CharSequence? {
return sections[position]
}
}
当我制作导航图“return TimesListFragment()”时,您必须像使用导航架构的旧方法一样管理viewPager。newInstance(sections)”没有任何区别。它希望数据通过导航UI的方式传递。当我创建导航图时,“return TimesListFragment().newInstance(sections)”没有任何区别。它希望通过导航UI方式传递数据。