当它是带有TabActivity
的tabWidgets
时,我的问题已经被回答了好几次。但是我找不到相对新的TabLayout
View 的任何信息。
这很简单,就像facebook,我希望点击一个已经选择的选项卡,以使我的列表向上滚动直到其开始。但我不知道该把我的听众放在哪里。
我尝试了TabLayout
本身,mTabLayout.getChildAt()
和TabLayout.getTabAt().getCustomView()
。
编辑:更正:
正如CommonsWare在其答复的评论中提到的那样,我不得不重写“onTabSelected”的行为。
mTabLayout = (TabLayout) findViewById(R.id.tabs);
mTabLayout.setupWithViewPager(mViewPager);
for (int i = 0; i < mTabLayout.getTabCount(); i++) {
mTabLayout.getTabAt(i).setIcon(tabIcons[i]);
}
mTabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
mViewPager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
if (tab.getPosition() == PAGE_FEED) {
((PagerNewsFeedFragment) mViewPagerAdapter.getRegisteredFragment(PAGE_FEED)).scrollToTop();
}
}
});
谢谢 !
最佳答案
基于花费约10秒钟阅读文档的时间,请致电 setOnTabSelectedListener()
on the TabLayout
。传递OnTabSelectedListener
实现。您的事件回调方法is onTabReselected()
。
关于android - 如何检测在TabLayout中已选择的选项卡上的单击,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35895973/