Example #1
0
  @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);
  }