一个小页面 用到ViewPager+Fragment还有下划线随页面滑动 应为赖的写线 所以拖了第三方
一个很老的库 所以里面方法不是很全
compile 'com.astuetz:pagerslidingtabstrip:1.0.1'
<com.astuetz.PagerSlidingTabStrip android:id="@+id/tabs" android:layout_width="match_parent" android:layout_height="55dp" android:background="#F9f9f9" psts:pstsShouldExpand="true" /> <android.support.v4.view.ViewPager android:id="@+id/job_viewpager" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" />
dm = getResources().getDisplayMetrics();tabs = (PagerSlidingTabStrip) findViewById(R.id.tabs); viewPager = (ViewPager) findViewById(R.id.job_viewpager);FragmentAdapter adapter = new FragmentAdapter(getSupportFragmentManager()); viewPager.setAdapter(adapter); tabs.setViewPager(viewPager);setTabsValue();
class FragmentAdapter extends FragmentPagerAdapter { private final String[] titles = {"高速报警", "服务热线", "保险公司"}; public FragmentAdapter(FragmentManager fm) { super(fm); } @Override public CharSequence getPageTitle(int position) { return titles[position]; } @Override public int getCount() { return titles.length; } @Override public Fragment getItem(int positon) { switch (positon) { case 0: if (null == alart) { alart = new AlartFramgent(); } return alart; case 1: if (null == high) { high = new ServiceFramgent(); } return high; case 2: if (null == safe) { safe = new SafeFramgent(); } return safe; } return null; } } private DisplayMetrics dm; /** * 对PagerSlidingTabStrip的各项属性进行赋值。 */ private void setTabsValue() { // 设置Tab是自动填充满屏幕的 tabs.setShouldExpand(true); // 设置Tab的分割线是透明的 tabs.setDividerColor(Color.TRANSPARENT); // 设置Tab底部线的高度 tabs.setUnderlineHeight((int) TypedValue.applyDimension( TypedValue.COMPLEX_UNIT_DIP, 1, dm)); // 设置Tab Indicator的高度 tabs.setIndicatorHeight((int) TypedValue.applyDimension( TypedValue.COMPLEX_UNIT_DIP, 3, dm)); // 设置Tab标题文字的大小 tabs.setTextSize((int) TypedValue.applyDimension( TypedValue.COMPLEX_UNIT_SP, 18, dm)); // 设置Tab Indicator的颜色 tabs.setIndicatorColor(Color.parseColor("#65a6ff")); // 取消点击Tab时的背景 tabs.setTabBackground(0); }
大概就是这样 缺点不少 样式简单 需求简单的时候就用了
官网地址:https://github.com/astuetz/PagerSlidingTabStrip