一行代码调用Android自定义ViewPager指示器
来源:互联网 发布:如何查看tcp端口 编辑:程序博客网 时间:2024/05/17 01:25
PagerSlidingTabStrip基于HorizontalScrollView实现ViewPager的tab指示栏?效果,闲话不多说,直接看效果。
AndroidCodeTools (持续更新…)
GitHub:https://github.com/Pgrammerybj/AndroidCodeTools
* 支持自定义Tab栏的颜色、高度、点击以及条目个数
* 支持条目文字的大小、颜色设置
* 支持文字底部横向指示条的颜色、高度以及间距
* 如需更多功能,请联系我咯
具体调用:
//真正的实现一行调用,让广大开发者朋友能够happy的做需求。(具体的配置方式可参考库中的demo) PagerSlidingTabStrip pagerTitle = (PagerSlidingTabStrip) findViewById(R.id.topic_viewpager_title); ViewPager viewPager = (ViewPager) findViewById(R.id.viewpager_fragment); FragmentOne oneF = new FragmentOne(); FragmentTwo twoF = new FragmentTwo(); FragmentManager fragmentTransaction = getSupportFragmentManager(); FragmentViewPagerAdapter pagerAdapter = new FragmentViewPagerAdapter(fragmentTransaction); pagerAdapter.add(oneF, getString(R.string.viewpager_one_text)); pagerAdapter.add(twoF, getString(R.string.viewpager_two_text)); viewPager.setAdapter(pagerAdapter); //将目标viewPager添加到指示器中 pagerTitle.setViewPager(viewPager);
Xml 布局:
<com.jackyang.codetools.PagerSlidingTabStrip android:id="@+id/topic_viewpager_title" android:layout_width="match_parent" android:layout_height="45dp" android:layout_gravity="top" android:background="#ffffffff" app:pstsDefTextColor="@color/w2" app:pstsDividerColor="#00000000" app:pstsDividerPadding="0dp" app:pstsDividerWidth="0dp" app:pstsIndicatorColor="@color/w1" app:pstsIndicatorPaddingLeftRight="60dp" app:pstsIndicatorHeight="2dp" app:pstsSelTextColor="@color/w1" app:pstsShouldExpand="true" app:pstsTabTextSize="@dimen/s2" app:pstsUnderlineColor="@color/w1" app:pstsUnderlineHeight="0dp"/>
FragmentViewPagerAdapter的源码:
private static class FragmentViewPagerAdapter extends android.support.v4.app.FragmentPagerAdapter { private List<Fragment> mFragmentList = new ArrayList<>(); private List<CharSequence> mTitleList = new ArrayList<>(); FragmentViewPagerAdapter(FragmentManager fm) { super(fm); } @Override public int getCount() { return mFragmentList.size(); } @Override public Fragment getItem(int position) { return getCount() > position ? mFragmentList.get(position) : null; } @Override public Parcelable saveState() { return null; } @Override public void restoreState(Parcelable state, ClassLoader loader) { } @Override public CharSequence getPageTitle(int position) { return mTitleList.get(position); } void add(Fragment fragment, CharSequence title) { mFragmentList.add(fragment); mTitleList.add(title); } }
后话:
我所想要的就是简洁简单,能让用户上手就能使用不至于其他繁杂的设置来影 响大家的开发进度。PagerSlidingTabStrip目前已经在公司项目中使用(日活3W左右),目前所包含的功能还是比较简单的,还望大家对该控件有什么建议或者意见,大家共同进步。
更多项目:
- 自定义动画请移步至 AnimationUtils
- 欢迎关注廖子尧(jeasonlzy)的开源项目okhttp-OkGo
阅读全文
1 0
- 一行代码调用Android自定义ViewPager指示器
- Android自定义ViewPager指示器
- Android-自定义ViewPager指示器
- Android自定义ViewPager指示器
- Android自定义Viewpager指示器PagerIndicator-仿微博头条效果
- Android 自定义View实现ViewPager指示器
- Android---自定义ViewPager指示器(一)
- Android自定义View--Flyme6的Viewpager指示器
- Android 自定义控件ViewPager 指示器 ViewPagerIndicator
- Android——自定义ViewPager指示器
- 自定义ViewPager指示器
- 自定义viewpager指示器
- Android_自定义ViewPager指示器
- 自定义ViewPager指示器
- 自定义ViewPager指示器
- 自定义ViewPager指示器
- Android ViewPager指示器 IndicatorBar
- Android ViewPager指示器 IndicatorBar
- 一个“.java”文件中是否允许多个类(不是内部类)存在
- html,css,js防止浏览器缓存,导致不加载新页面。
- FreeRTOS系列学习笔记一---FreeRTOS编码标准及风格指南
- hive使用serde是出现classnotfind的问题
- 队列——链队列
- 一行代码调用Android自定义ViewPager指示器
- Struts2框架下使用Kindeditor上传图片
- 批处理汇总
- Android系统解决方法数越界
- Sublime配置lua开发环境傻瓜式教学
- 函数式编程
- 链表创建及反转
- json
- wpf 如何对window样式中的close按钮添加关闭事件