我想要设置一个from django.apps import apps
model_obj = apps.get_model('app_name', 'model_name')
model_obj.objects.get() ...etc
,以便与NavigationView
和ViewPager
配合使用。
点击TabLayout
中的item
即:
将用户带到相应的NavigationView
相应地设置fragment
指示符
我设法使用TabLayout
完成了第一项任务,但我无法修复第二项任务。我试过了:
通过mViewPager.setCurrentItem()
检索tab
并“选择”它:
TabLayout
但这是一个半身像。 (Tab indicator)
每次点击mTabLayout.getTabAt(TAB_POSITION).select();
后调用mTabLayout.setupWithViewPager(mViewPager);
但结果相同。 (TabLayout tab selection)。
编辑 - 代码:
item
..... .....
mViewPager = (ViewPager) findViewById(R.id.viewpager);
mViewPager.setAdapter(mAdapter);
mTabLayout = (TabLayout) findViewById(R.id.tablayout);
mTabLayout.setupWithViewPager(mViewPager);
mViewPager.addOnPageChangeListener(new PageChangeListener());
如何将所有内容组合在一起?
答案 0 :(得分:0)
在类ed.getContent()
的方法setupWithViewPager
中,我们可以看到在视图寻呼机上设置了回调:
TabLayout
在课程viewPager.addOnPageChangeListener(new TabLayoutOnPageChangeListener(this));
中,方法为TabLayoutOnPageChangeListener
:
onPageSelected
所以在这里我们可以看到tablayout应该在viewpager更改其内容时选择好选项卡。
设置public void onPageSelected(int position) {
final TabLayout tabLayout = mTabLayoutRef.get();
if (tabLayout != null && tabLayout.getSelectedTabPosition() != position) {
// Select the tab, only updating the indicator if we're not being dragged/settled
// (since onPageScrolled will handle that).
tabLayout.selectTab(tabLayout.getTabAt(position),
mScrollState == ViewPager.SCROLL_STATE_IDLE);
}
}
的适配器后,您是否立即致电setupWithViewPager