@Override
  public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);

    // This is RecyclerViewWrapperAdapter. Checkout at
    // https://github.com/henrytao-me/recyclerview-multistate-section-endless-adapter
    RecyclerView.Adapter adapter =
        new SimpleRecyclerViewAdapter(new SimpleAdapter<>(getSampleData(), null)) {
          @Override
          public RecyclerView.ViewHolder onCreateFooterViewHolder(
              LayoutInflater layoutInflater, ViewGroup viewGroup) {
            return null;
          }

          @Override
          public RecyclerView.ViewHolder onCreateHeaderViewHolder(
              LayoutInflater layoutInflater, ViewGroup viewGroup) {
            return new HeaderHolder(layoutInflater, viewGroup, R.layout.item_header_spacing);
          }
        };
    vRecyclerView.hasFixedSize();
    vRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
    vRecyclerView.setAdapter(adapter);

    int actionBarSize = ResourceUtils.getActionBarSize(getContext());
    int progressViewStart =
        getResources().getDimensionPixelSize(R.dimen.app_bar_height) - actionBarSize;
    int progressViewEnd = progressViewStart + (int) (actionBarSize * 1.5f);
    vSwipeRefreshLayout.setProgressViewOffset(true, progressViewStart, progressViewEnd);
    vSwipeRefreshLayout.setOnRefreshListener(this);
  }
  @Override
  public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);

    vRecyclerView.hasFixedSize();
    vRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
    vRecyclerView.setAdapter(new SimpleAdapter<>(getSampleData(), null));
  }
  @Override
  public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);

    ViewPagerAdapter adapter = new ViewPagerAdapter(getChildFragmentManager());
    adapter.addFragment(
        DummyRecyclerViewFragment.newInstance(
            "Cat", 100, R.layout.item_action_bar_tab_layout_spacing),
        "Cat");
    adapter.addFragment(
        DummyRecyclerViewFragment.newInstance(
            "Dog", 100, R.layout.item_action_bar_tab_layout_spacing),
        "Dog");
    adapter.addFragment(
        DummyRecyclerViewFragment.newInstance(
            "Mouse", 100, R.layout.item_action_bar_tab_layout_spacing),
        "Mouse");
    adapter.addFragment(
        DummyRecyclerViewFragment.newInstance(
            "Chicken", 5, R.layout.item_action_bar_tab_layout_spacing),
        "Chicken");
    adapter.addFragment(
        DummyNestedScrollViewFragment.newInstance(
            getString(R.string.text_long), R.layout.item_action_bar_tab_layout_spacing),
        "Duck");
    adapter.addFragment(
        DummyRecyclerViewFragment.newInstance(
            "Bird", 100, R.layout.item_action_bar_tab_layout_spacing),
        "Bird");
    adapter.addFragment(
        DummyNestedScrollViewFragment.newInstance(
            getString(R.string.text_short), R.layout.item_action_bar_tab_layout_spacing),
        "Tiger");

    // PagerAdapter have to implement `me.henrytao.smoothappbarlayout.PagerAdapter` in order to make
    // it work with `SmoothAppBarLayout`
    if (adapter instanceof PagerAdapter) {
      vViewPager.setAdapter(adapter);
    }
    vTabLayout.setupWithViewPager(vViewPager);
    vTabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);
  }
  @Override
  public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);

    // This is RecyclerViewWrapperAdapter. Checkout at
    // https://github.com/henrytao-me/recyclerview-multistate-section-endless-adapter
    RecyclerView.Adapter adapter =
        new SimpleRecyclerViewAdapter(new SimpleAdapter<>(getSampleData(), null)) {
          @Override
          public RecyclerView.ViewHolder onCreateFooterViewHolder(
              LayoutInflater layoutInflater, ViewGroup viewGroup) {
            return null;
          }

          @Override
          public RecyclerView.ViewHolder onCreateHeaderViewHolder(
              LayoutInflater layoutInflater, ViewGroup viewGroup) {
            return new HeaderHolder(layoutInflater, viewGroup, R.layout.item_action_bar_spacing);
          }
        };
    vRecyclerView.hasFixedSize();
    vRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
    vRecyclerView.setAdapter(adapter);
  }