android.support.v4.view.PagerAdapter#getCount ( )源码实例Demo

下面列出了android.support.v4.view.PagerAdapter#getCount ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Atomic   文件: TabPageIndicator.java
public void notifyDataSetChanged() {
    mTabLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    final int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        CharSequence title = adapter.getPageTitle(i);
        if (title == null) {
            title = EMPTY_TITLE;
        }
        addTab(title, i);
    }
    if (mSelectedTabIndex > count) {
        mSelectedTabIndex = count - 1;
    }
    setCurrentItem(mSelectedTabIndex);
    requestLayout();
}
 
源代码2 项目: HomeGenie-Android   文件: TabPageIndicator.java
public void notifyDataSetChanged() {
    mTabLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    IconPagerAdapter iconAdapter = null;
    if (adapter instanceof IconPagerAdapter) {
        iconAdapter = (IconPagerAdapter)adapter;
    }
    final int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        CharSequence title = adapter.getPageTitle(i);
        if (title == null) {
            title = EMPTY_TITLE;
        }
        int iconResId = 0;
        if (iconAdapter != null) {
            iconResId = iconAdapter.getIconResId(i);
        }
        addTab(i, title, iconResId);
    }
    if (mSelectedTabIndex > count) {
        mSelectedTabIndex = count - 1;
    }
    setCurrentItem(mSelectedTabIndex);
    requestLayout();
}
 
源代码3 项目: barterli_android   文件: TabPageIndicator.java
public void notifyDataSetChanged() {
    mTabLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    IconPagerAdapter iconAdapter = null;
    if (adapter instanceof IconPagerAdapter) {
        iconAdapter = (IconPagerAdapter)adapter;
    }
    final int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        CharSequence title = adapter.getPageTitle(i);
        if (title == null) {
            title = EMPTY_TITLE;
        }
        int iconResId = 0;
        if (iconAdapter != null) {
            iconResId = iconAdapter.getIconResId(i);
        }
        addTab(i, title, iconResId);
    }
    if (mSelectedTabIndex > count) {
        mSelectedTabIndex = count - 1;
    }
    setCurrentItem(mSelectedTabIndex);
    requestLayout();
}
 
源代码4 项目: zhangshangwuda   文件: TabPageIndicator.java
public void notifyDataSetChanged() {
    mTabLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    IconPagerAdapter iconAdapter = null;
    if (adapter instanceof IconPagerAdapter) {
        iconAdapter = (IconPagerAdapter)adapter;
    }
    final int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        CharSequence title = adapter.getPageTitle(i);
        if (title == null) {
            title = EMPTY_TITLE;
        }
        int iconResId = 0;
        if (iconAdapter != null) {
            iconResId = iconAdapter.getIconResId(i);
        }
        addTab(i, title, iconResId);
    }
    if (mSelectedTabIndex > count) {
        mSelectedTabIndex = count - 1;
    }
    setCurrentItem(mSelectedTabIndex);
    requestLayout();
}
 
源代码5 项目: UltimateAndroid   文件: TabPageIndicator.java
public void notifyDataSetChanged() {
    mTabLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    IconPagerAdapter iconAdapter = null;
    if (adapter instanceof IconPagerAdapter) {
        iconAdapter = (IconPagerAdapter)adapter;
    }
    final int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        CharSequence title = adapter.getPageTitle(i);
        if (title == null) {
            title = EMPTY_TITLE;
        }
        int iconResId = 0;
        if (iconAdapter != null) {
            iconResId = iconAdapter.getIconResId(i);
        }
        addTab(i, title, iconResId);
    }
    if (mSelectedTabIndex > count) {
        mSelectedTabIndex = count - 1;
    }
    setCurrentItem(mSelectedTabIndex);
    requestLayout();
}
 
源代码6 项目: iMoney   文件: TabPageIndicator.java
public void notifyDataSetChanged() {
    mTabLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    IconPagerAdapter iconAdapter = null;
    if (adapter instanceof IconPagerAdapter) {
        iconAdapter = (IconPagerAdapter)adapter;
    }
    final int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        CharSequence title = adapter.getPageTitle(i);
        if (title == null) {
            title = EMPTY_TITLE;
        }
        int iconResId = 0;
        if (iconAdapter != null) {
            iconResId = iconAdapter.getIconResId(i);
        }
        addTab(i, title, iconResId);
    }
    if (mSelectedTabIndex > count) {
        mSelectedTabIndex = count - 1;
    }
    setCurrentItem(mSelectedTabIndex);
    requestLayout();
}
 
源代码7 项目: LLApp   文件: AutoScrollViewPager.java
/**
 * scroll only once
 */
public void scrollOnce() {
    PagerAdapter adapter = getAdapter();
    int currentItem = getCurrentItem();
    int totalCount;
    if (adapter == null || (totalCount = adapter.getCount()) <= 1) {
        return;
    }

    int nextItem = (direction == LEFT) ? --currentItem : ++currentItem;
    if (nextItem < 0) {
        if (isCycle) {
            setCurrentItem(totalCount - 1, isBorderAnimation);
        }
    } else if (nextItem == totalCount) {
        if (isCycle) {
            setCurrentItem(0, isBorderAnimation);
        }
    } else {
        setCurrentItem(nextItem, true);
    }
}
 
源代码8 项目: Huochexing12306   文件: TabPageIndicator.java
public void notifyDataSetChanged() {
    mTabLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    IconPagerAdapter iconAdapter = null;
    if (adapter instanceof IconPagerAdapter) {
        iconAdapter = (IconPagerAdapter)adapter;
    }
    final int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        CharSequence title = adapter.getPageTitle(i);
        if (title == null) {
            title = EMPTY_TITLE;
        }
        int iconResId = 0;
        if (iconAdapter != null) {
            iconResId = iconAdapter.getIconResId(i);
        }
        addTab(i, title, iconResId);
    }
    if (mSelectedTabIndex > count) {
        mSelectedTabIndex = count - 1;
    }
    setCurrentItem(mSelectedTabIndex);
    requestLayout();
}
 
源代码9 项目: UltimateAndroid   文件: TabPageIndicator.java
public void notifyDataSetChanged() {
    mTabLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    IconPagerAdapter iconAdapter = null;
    if (adapter instanceof IconPagerAdapter) {
        iconAdapter = (IconPagerAdapter)adapter;
    }
    final int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        CharSequence title = adapter.getPageTitle(i);
        if (title == null) {
            title = EMPTY_TITLE;
        }
        int iconResId = 0;
        if (iconAdapter != null) {
            iconResId = iconAdapter.getIconResId(i);
        }
        addTab(i, title, iconResId);
    }
    if (mSelectedTabIndex > count) {
        mSelectedTabIndex = count - 1;
    }
    setCurrentItem(mSelectedTabIndex);
    requestLayout();
}
 
源代码10 项目: IslamicLibraryAndroid   文件: RtlViewPager.java
@Override
public void onPageSelected(int position) {
    PagerAdapter adapter = RtlViewPager.super.getAdapter();
    if (isRtl() && adapter != null) {
        position = adapter.getCount() - position - 1;
    }
    mListener.onPageSelected(position);
}
 
@Override
public void notifyDataSetChanged() {
    mLayout.removeAllViews();
    PagerAdapter adapter = mViewPager.getAdapter();
    int count = adapter.getCount();
    for (int i = 0; i < count; i++) {
        View view = createAndRenderView(i);
        mLayout.addView(view);
    }
    if (mSelectedIndex > count) {
        mSelectedIndex = count - 1;
    }
    setCurrentItem(mSelectedIndex);
    requestLayout();
}
 
源代码12 项目: RecyclerPager   文件: SmartTabLayout.java
@Override protected void populateTabStrip() {
    final PagerAdapter adapter = viewPager.getAdapter();
    if (adapter == null) {
        return;
    }
    for (int i = 0; i < adapter.getCount(); i++) {

        CharSequence title = adapter.getPageTitle(i);
        final View tabView = (tabProvider == null) ? createDefaultTabView(title)
                : tabProvider.createTabView(tabStrip, i, title);
        if (tabView == null) {
            throw new IllegalStateException("tabView is null.");
        }
        if (distributeEvenly) {
            LinearLayout.LayoutParams lp =
                    (LinearLayout.LayoutParams) tabView.getLayoutParams();
            lp.width = 0;
            lp.weight = 1;
        }

        if (internalTabClickListener != null) {
            tabView.setOnClickListener(internalTabClickListener);
        }

        tabStrip.addView(tabView);

        if (i == getCurrentItem()) {
            tabView.setSelected(true);
        }
    }
}
 
源代码13 项目: IslamicLibraryAndroid   文件: RtlViewPager.java
@Override
public void setCurrentItem(int position, boolean smoothScroll) {
    PagerAdapter adapter = super.getAdapter();
    if (adapter != null && isRtl()) {
        position = adapter.getCount() - position - 1;
    }
    super.setCurrentItem(position, smoothScroll);
}
 
源代码14 项目: SlidePager   文件: SlidePager.java
@Override
public void setAdapter(PagerAdapter adapter) {
    if (!(adapter instanceof AbstractSlidePagerAdapter)) {
        throw new IllegalArgumentException("PagerAdapter should be a subclass of AbstractSlidePagerAdapter");
    }

    super.setAdapter(adapter);

    if (mStartAtEnd) {
        int position = adapter.getCount() - 1;
        setCurrentItem(position >= 0 ? position : 0);
    }
}
 
源代码15 项目: ONE-Unofficial   文件: PullToRefreshViewPager.java
@Override
protected boolean isReadyForPullEnd() {
    ViewPager refreshableView = getRefreshableView();

    PagerAdapter adapter = refreshableView.getAdapter();
    if (null != adapter) {
        return refreshableView.getCurrentItem() == adapter.getCount() - 1;
    }

    return false;
}
 
源代码16 项目: SmartTablayout   文件: SmartTabLayout.java
private void populateTabStrip() {
  final PagerAdapter adapter = viewPager.getAdapter();
  final OnClickListener tabClickListener = new TabClickListener();

  for (int i = 0; i < adapter.getCount(); i++) {

    final View tabView = (tabProvider == null)
        ? createDefaultTabView(adapter.getPageTitle(i))
        : tabProvider.createTabView(tabStrip, i, adapter);

    if (tabView == null) {
      throw new IllegalStateException("tabView is null.");
    }

    if (distributeEvenly) {
      LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) tabView.getLayoutParams();
      lp.width = 0;
      lp.weight = 1;
    }

    tabView.setOnClickListener(tabClickListener);
    tabStrip.addView(tabView);

    if (i == viewPager.getCurrentItem()) {
      tabView.setSelected(true);
    }

  }
}
 
源代码17 项目: LoyalNativeSlider   文件: NumContainer.java
@Override
public void onChanged() {
    PagerAdapter adapter = mPager.getAdapter();
    if (adapter instanceof InfinitePagerAdapter) {
        mTotalSlides = ((InfinitePagerAdapter) adapter).getRealCount();
    } else {
        mTotalSlides = adapter.getCount();
    }
}
 
源代码18 项目: InfiniteViewPager   文件: InfiniteViewPager.java
public static int getAdapterSize(ViewPager viewPager) {
    if (viewPager instanceof InfiniteViewPager) {
        InfiniteViewPager infiniteViewPager = (InfiniteViewPager) viewPager;
        return getRealAdapterSize(infiniteViewPager);
    }
    PagerAdapter adapter = viewPager.getAdapter();
    if (adapter instanceof InfinitePagerAdapter) {
        InfinitePagerAdapter infinitePagerAdapter = (InfinitePagerAdapter) viewPager.getAdapter();
        return infinitePagerAdapter.getItemCount();
    }
    return adapter == null ? 0 : adapter.getCount();
}
 
源代码19 项目: CircularViewPager   文件: CircularTabLayout.java
public void setTabsFromPagerAdapter(@NonNull PagerAdapter adapter) {
    List<Tab> list = new ArrayList<>();
    if (adapter instanceof ITabSetting) {
        for (int i = 0, count = adapter.getCount(); i < count; ++i) {
            list.add(((ITabSetting) adapter).getTabItem(i));
        }
    } else {
        for (int i = 0, count = adapter.getCount(); i < count; ++i) {
            list.add(new Tab(getContext()).setText(adapter.getPageTitle(i)));
        }
    }

    mCircularTabLayoutAdapter =
            new CircularTabLayoutAdapter(getContext(), new ITabSelectedListener() {
                @Override
                public void onTabItemClicked(int position) {
                    smoothScrollToPositionFromTabSelect(position);
                }
            });
    mCircularTabLayoutAdapter.setTabData(list);

    setTabViewStyle();

    getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
        @SuppressWarnings("deprecation")
        @SuppressLint("NewApi")
        @Override
        public void onGlobalLayout() {
            if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN) {
                getViewTreeObserver().removeGlobalOnLayoutListener(this);
            } else {
                getViewTreeObserver().removeOnGlobalLayoutListener(this);
            }

            LinearLayoutManager linearLayoutManager = (LinearLayoutManager) getLayoutManager();
            View targetView = linearLayoutManager.findViewByPosition(0);
            if (targetView != null) {
                RecyclerView.LayoutParams params =
                        (RecyclerView.LayoutParams) targetView.getLayoutParams();
                int start = linearLayoutManager.getPaddingLeft();
                int end = linearLayoutManager.getWidth() - linearLayoutManager.getPaddingRight();
                int left = linearLayoutManager.getDecoratedLeft(targetView) - params.leftMargin;
                int right = linearLayoutManager.getDecoratedRight(targetView) + params.rightMargin;
                int offset = (start + ((end - start) / 2 - (right - left) / 2)) - left;
                linearLayoutManager.scrollToPositionWithOffset(
                        mCircularTabLayoutAdapter.getCurrentPosition(), offset);
            }
        }
    });
}
 
源代码20 项目: attendee-checkin   文件: TabLayout.java
/**
 * Add new {@link Tab}s populated from a {@link PagerAdapter}. Each tab will have it's text set
 * to the value returned from {@link PagerAdapter#getPageTitle(int)}.
 *
 * @param adapter the adapter to populate from
 */
public void addTabsFromPagerAdapter(PagerAdapter adapter) {
    for (int i = 0, count = adapter.getCount(); i < count; i++) {
        addTab(newTab().setText(adapter.getPageTitle(i)));
    }
}