@Override public void addView(View child, int index, ViewGroup.LayoutParams params) { if (child instanceof Decor) { ((ViewPager.LayoutParams) params).isDecor = true; mDecor = (Decor) child; mTabStrip = child; mDecor.setOnTitleClickListener( new OnTitleClickListener() { @Override public void onTitleClicked(int index) { setCurrentItem(index, true); } }); setOnPageChangeListener( new ViewPager.OnPageChangeListener() { @Override public void onPageSelected(int position) { mDecor.onPageSelected(position); } @Override public void onPageScrolled( int position, float positionOffset, int positionOffsetPixels) { mDecor.onPageScrolled(position, positionOffset, positionOffsetPixels); } @Override public void onPageScrollStateChanged(int state) {} }); } else if (child instanceof HomePagerTabStrip) { mTabStrip = child; } super.addView(child, index, params); }