TabLayout onTabSelected 未调用
TabLayout onTabSelected not called
我在 activity 中使用 android.support.design.widget.TabLayout
和 android.support.v4.view.ViewPager
。
没有错误。所有标签都显示罚款,他们可以选择,滑动工作。
Activity代码:
ViewPager mViewPager;
TabLayout mSlidingTabs;
mSlidingTabs = (TabLayout) findViewById(R.id.tabs);
mSlidingTabs.setupWithViewPager(mViewPager);
mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
Log.w(TAG, "onPageScrolled");// nothing happens here either
}
@Override
public void onPageSelected(int position) {
Log.w(TAG, "onPageSelected");// nothing happens here either
}
@Override
public void onPageScrollStateChanged(int state) {
Log.w(TAG, "onPageScrollStateChanged");// nothing happens here either
}
});
mSlidingTabs.setOnTabSelectedListener(
new TabLayout.ViewPagerOnTabSelectedListener(mViewPager) {
@Override
public void onTabSelected(TabLayout.Tab tab) {
super.onTabSelected(tab);
Log.w(TAG, "selected");
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
Log.w(TAG, "onTabUnselected");
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
Log.w(TAG, "onTabReselected");
}
});
我错过了什么?
tablayout 和 viewpager nyc 代码下方
pagerList.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
尝试按以下顺序执行操作:
- 调用`setupWithViewPager();
- 添加
onTabSelectedListener();
像这样:
mSlidingTabs.setupWithViewPager(mViewPager);
mSlidingTabs.setOnTabSelectedListener(
new TabLayout.ViewPagerOnTabSelectedListener(mViewPager) {
@Override
public void onTabSelected(TabLayout.Tab tab) {
super.onTabSelected(tab);
Log.d(TAG, "Tab selected");
}
});
如果这不起作用,问题一定在您提供的代码的范围之外。如果是这种情况,请提供一些反馈,以便我们进一步调查。
我在 activity 中使用 android.support.design.widget.TabLayout
和 android.support.v4.view.ViewPager
。
没有错误。所有标签都显示罚款,他们可以选择,滑动工作。
Activity代码:
ViewPager mViewPager;
TabLayout mSlidingTabs;
mSlidingTabs = (TabLayout) findViewById(R.id.tabs);
mSlidingTabs.setupWithViewPager(mViewPager);
mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
Log.w(TAG, "onPageScrolled");// nothing happens here either
}
@Override
public void onPageSelected(int position) {
Log.w(TAG, "onPageSelected");// nothing happens here either
}
@Override
public void onPageScrollStateChanged(int state) {
Log.w(TAG, "onPageScrollStateChanged");// nothing happens here either
}
});
mSlidingTabs.setOnTabSelectedListener(
new TabLayout.ViewPagerOnTabSelectedListener(mViewPager) {
@Override
public void onTabSelected(TabLayout.Tab tab) {
super.onTabSelected(tab);
Log.w(TAG, "selected");
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
Log.w(TAG, "onTabUnselected");
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
Log.w(TAG, "onTabReselected");
}
});
我错过了什么?
tablayout 和 viewpager nyc 代码下方
pagerList.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
尝试按以下顺序执行操作:
- 调用`setupWithViewPager();
- 添加
onTabSelectedListener();
像这样:
mSlidingTabs.setupWithViewPager(mViewPager);
mSlidingTabs.setOnTabSelectedListener(
new TabLayout.ViewPagerOnTabSelectedListener(mViewPager) {
@Override
public void onTabSelected(TabLayout.Tab tab) {
super.onTabSelected(tab);
Log.d(TAG, "Tab selected");
}
});
如果这不起作用,问题一定在您提供的代码的范围之外。如果是这种情况,请提供一些反馈,以便我们进一步调查。