public TabLayoutAssert hasTabCount(int count) { isNotNull(); int actualCount = actual.getTabCount(); assertThat(actualCount) // .overridingErrorMessage("Expected tab count of <%s> but was <%s>.", count, actualCount) // .isEqualTo(count); return this; }
@Override protected void init(Bundle savedInstanceState) { initView(); if (savedInstanceState != null) { mSelectedPosition = savedInstanceState.getInt(BUNDLE_KEY); } lazyLoadAdapter = new LazyLoadAdapter(mContext, getChildFragmentManager()); viewPager.setAdapter(lazyLoadAdapter); tabLayout.setupWithViewPager(viewPager); viewPager.setOffscreenPageLimit(4); for (int i = 0; i < tabLayout.getTabCount(); i++) { TabLayout.Tab tab = tabLayout.getTabAt(i); if (tab == null) continue; tab.setCustomView(lazyLoadAdapter.getTabView(i)); } lazyLoadAdapter.selectedTab(mSelectedPosition); initListener(); }
@Override public void onItemChanged(@NonNull Item item) { mItem = item; if (mTabLayout.getTabCount() > 0) { //noinspection ConstantConditions mTabLayout.getTabAt(0).setText(getResources() .getQuantityString(R.plurals.comments_count, item.getKidCount(), item.getKidCount())); } }
@Override protected void setUp() { setSupportActionBar(mToolbar); if (getSupportActionBar() != null) { getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setDisplayShowHomeEnabled(true); } mPagerAdapter.setCount(2); mViewPager.setAdapter(mPagerAdapter); mTabLayout.addTab(mTabLayout.newTab().setText(getString(R.string.blog))); mTabLayout.addTab(mTabLayout.newTab().setText(getString(R.string.open_source))); mViewPager.setOffscreenPageLimit(mTabLayout.getTabCount()); mViewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(mTabLayout)); mTabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { @Override public void onTabSelected(TabLayout.Tab tab) { mViewPager.setCurrentItem(tab.getPosition()); } @Override public void onTabUnselected(TabLayout.Tab tab) { } @Override public void onTabReselected(TabLayout.Tab tab) { } }); }
activity = controller.get(); TabLayout tabLayout = activity.findViewById(R.id.tab_layout); assertEquals(2, tabLayout.getTabCount()); assertEquals(1, tabLayout.getSelectedTabPosition());
@Config(shadows = ShadowRecyclerView.class) @Test public void testScrollItemToTop() { activity.onItemSelected(new TestHnItem(1L) { @NonNull @Override public String getType() { return STORY_TYPE; } }); TabLayout tabLayout = activity.findViewById(R.id.tab_layout); assertThat(tabLayout.getTabCount()).isEqualTo(2); tabLayout.getTabAt(0).select(); ViewPager viewPager = activity.findViewById(R.id.content); viewPager.getAdapter().instantiateItem(viewPager, 0); viewPager.getAdapter().finishUpdate(viewPager); RecyclerView itemRecyclerView = viewPager.findViewById(R.id.recycler_view); itemRecyclerView.smoothScrollToPosition(1); assertThat(customShadowOf(itemRecyclerView).getScrollPosition()).isEqualTo(1); tabLayout.getTabAt(1).select(); tabLayout.getTabAt(0).select(); tabLayout.getTabAt(0).select(); assertThat(customShadowOf(itemRecyclerView).getScrollPosition()).isEqualTo(0); }
if (intent != null && !TextUtils.isEmpty(intent.getAction())) { if (UnreadService.ACTION_UNREAD_CHANGED.equals(intent.getAction())) { if (getTablayout().getTabCount() < 4) return;
@Test public void testToggleItemView() { activity.onItemSelected(createWebItem()); TabLayout tabLayout = activity.findViewById(R.id.tab_layout); assertEquals(2, tabLayout.getTabCount()); assertStoryMode(); tabLayout.getTabAt(0).select(); assertCommentMode(); tabLayout.getTabAt(1).select(); assertStoryMode(); }
assertThat(customShadowOf(recyclerView).getScrollPosition()).isEqualTo(1); TabLayout tabLayout = activity.findViewById(R.id.tab_layout); assertThat(tabLayout.getTabCount()).isEqualTo(2); tabLayout.getTabAt(1).select(); tabLayout.getTabAt(0).select();
@NonNull @Override public List<ViewAttribute> collect(TabLayout view, AttributeTranslator attributeTranslator) { List<ViewAttribute> attributes = new ArrayList<>(); attributes.add(new ViewAttribute<>("SelectedTabPosition", view.getSelectedTabPosition())); attributes.add(new ViewAttribute<>("TabCount", view.getTabCount())); attributes.add(new ViewAttribute<>("TabMode", new TabModeValue(view.getTabMode()))); attributes.add(new ViewAttribute<>("TabGravity", new TabGravityValue(view.getTabGravity()))); attributes.add(Collectors.createColorAttribute(view, "TabTextColor", view.getTabTextColors())); return attributes; }
for (int i = 0; i < tabLayout.getTabCount(); i++) { TabLayout.Tab tab = tabLayout.getTabAt(i); if (tab != null) {
private View getTabViewByPosition(int position){ if(mTabLayout != null && mTabLayout.getTabCount() > 0) { ViewGroup tabStrip = (ViewGroup) mTabLayout.getChildAt(0); return tabStrip != null ? tabStrip.getChildAt(position) : null; } return null; }
/** Selects the tab at index {@code selectedTabIndex}. */ public void selectTab(int selectedTabIndex) { if (mTabLayout != null && selectedTabIndex >= 0 && selectedTabIndex < mTabLayout.getTabCount()) { mTabLayout.getTabAt(selectedTabIndex).select(); } } protected void setupTabs() {
@Override public void run() { if (mTabLayout.getTabCount() > 0) onTabSelected(mTabLayout.getTabAt(0)); } });
public void setupTabLayout() { selectedTabPosition = viewPager.getCurrentItem(); for (int i = 0; i < tabLayout.getTabCount(); i++) { tabLayout.getTabAt(i).setCustomView(adapter.getTabView(i)); } } }
@Override public void onTabSelected(TabLayout.Tab tab) { onTabItemSelected(tab.getPosition()); for (int i=0;i<mTabLayout.getTabCount();i++){ View view = mTabLayout.getTabAt(i).getCustomView(); ImageView icon = (ImageView) view.findViewById(R.id.tab_content_image); TextView text = (TextView) view.findViewById(R.id.tab_content_text); if(i == tab.getPosition()){ icon.setImageResource(DataGenerator.mTabResPressed[i]); text.setTextColor(getResources().getColor(android.R.color.black)); }else{ icon.setImageResource(DataGenerator.mTabRes[i]); text.setTextColor(getResources().getColor(android.R.color.darker_gray)); } } }
private void setTabIcons() { List<MaterialColor> colors = mPagerAdapter.getColors(); for (int index = 0; index < mTabLayout.getTabCount(); index++) { MaterialColor materialColor = colors.get(index); Drawable icon = ContextCompat.getDrawable(getContext(), R.drawable.colors_tab_icon); icon.setColorFilter(Color.parseColor(materialColor.getPrimaryColor()), PorterDuff.Mode.SRC_ATOP); TabLayout.Tab tab = mTabLayout.getTabAt(index); if (tab != null) { tab.setIcon(icon); } } } }
private void setupViewPager() { List<String> titles = new ArrayList<String>(); titles.add("LIBRARY"); mTabLayout.addTab(mTabLayout.newTab().setText(titles.get(0))); mMediaServiceFragment = new BrowserMediaFragment(); mMediaServiceFragment.bindToolbar(this); List<Fragment> fragments = new ArrayList<Fragment>(); fragments.add(mMediaServiceFragment); MainFragmentAdapter adapter = new MainFragmentAdapter(getFragmentManager(), fragments, titles); mViewPager.setAdapter(adapter); mTabLayout.setupWithViewPager(mViewPager); mTabLayout.setTabsFromPagerAdapter(adapter); mViewPager.setOffscreenPageLimit(mTabLayout.getTabCount()); }
private void setTabLayout(List<CategoryMetaData> datas) { for (CategoryMetaData data : datas) { TabLayout.Tab tab = mTabLayout.newTab(); View customView = LayoutInflater.from(this).inflate(R.layout.tab_custom, null); TextView text = (TextView) customView.findViewById(R.id.text); text.setText(data.name); tab.setCustomView(customView); mTabLayout.addTab(tab, false); } mCategoryAdapter = new CategoryPagerAdapter(getSupportFragmentManager(), datas.size()); mPager.setAdapter(mCategoryAdapter); if (mTabLayout.getTabCount() > 0) { mTabLayout.getTabAt(1).select(); } }
@Override protected HashMap<String, Object> fillValues(View v, HashMap<String, Object> data, HashMap<String, Object> parentData) { super.fillValues(v, data, parentData); TabLayout view = (TabLayout) v; data.put("SelectedTabPosition", view.getSelectedTabPosition()); data.put("TabCount", view.getTabCount()); data.put("TabGravity", getTranslator().gravity(view.getTabGravity())); data.put("TabMode", getTranslator().tabMode(view.getTabMode())); data.put("TabTextColors", String.valueOf(view.getTabTextColors())); data.put("ShouldDelayChildPressedState", view.shouldDelayChildPressedState()); return data; } }