private void populateTabStrip() { final PagerAdapter adapter = mViewPager.getAdapter(); final View.OnClickListener tabClickListener = new TabClickListener(); for (int i = 0; i < adapter.getCount(); i++) { View tabView = null; TextView tabTitleView = null; if (mTabViewLayoutId != 0) { // If there is a custom tab view layout id set, try and inflate it tabView = LayoutInflater.from(getContext()).inflate(mTabViewLayoutId, mTabStrip, false); tabTitleView = (TextView) tabView.findViewById(mTabViewTextViewId); } if (tabView == null) { tabView = createDefaultTabView(getContext()); } if (tabTitleView == null && TextView.class.isInstance(tabView)) { tabTitleView = (TextView) tabView; } tabTitleView.setText(adapter.getPageTitle(i)); tabView.setOnClickListener(tabClickListener); mTabStrip.addView(tabView); } }
tabTitleView.setText(adapter.getPageTitle(i)); tabView.setOnClickListener(tabClickListener); String desc = mContentDescriptions.get(i, null);
private void initTabs() { content.removeAllViews(); if (viewPager == null) return; final PagerAdapter adapter = viewPager.getAdapter(); if (viewPager.getAdapter() == null) return; if (tabBuilder == null) { tabBuilder = position -> { View tab = inflate(getContext(), R.layout.carbon_tab, null); ((TextView) tab.findViewById(R.id.carbon_tabText)).setText(getViewPager().getAdapter().getPageTitle(position).toString().toUpperCase()); return tab; }; } for (int i = 0; i < adapter.getCount(); i++) { View tab = tabBuilder.getView(i); content.addView(tab, new LinearLayout.LayoutParams(0, ViewGroup.LayoutParams.MATCH_PARENT, 1f)); tab.setSelected(i == 0); final int finalI = i; tab.setOnClickListener(__ -> viewPager.setCurrentItem(finalI)); } }
@Nullable CharSequence getPageTitle(int position) { if (mPager == null) return null; final PagerAdapter adapter = mPager.getAdapter(); if (adapter == null) return null; return adapter.getPageTitle(position); } }
/** * Override this method if you want to use custom tab layout. * * @param tabLayout TabLayout * @param adapter PagerAdapter * @param position Position of the item * @return TabLayout.Tab */ protected TabLayout.Tab onCreateTab(TabLayout tabLayout, PagerAdapter adapter, int position) { TabLayout.Tab tab = tabLayout.newTab(); tab.setText(adapter.getPageTitle(position)); return tab; }
@Override protected TabLayout.Tab onCreateTab(TabLayout tabLayout, PagerAdapter adapter, int position) { // NOTE: should not call super method here! TabLayout.Tab tab = tabLayout.newTab(); tab.setText(adapter.getPageTitle(position)); View v = LayoutInflater.from(tabLayout.getContext()).inflate(R.layout.custom_tab, tabLayout, false); tab.setCustomView(v); return tab; }
@Override public void onPageSelected(int i) { setTitle(mViewPager.getAdapter().getPageTitle(i)); if (mPaymentFlowPagerAdapter.getPageAt(i) == PaymentFlowPagerEnum.SHIPPING_INFO) { mPaymentFlowPagerAdapter.hideShippingPage(); } }