-
SpringIndicator-使用bezier实现粘连效果的ViewPager指示器.zip下载
资源介绍
使用bezier实现粘连效果的ViewPager指示器。效果图:项目地址:https://github.com/chenupt/SpringIndicator 如何导入到工程中:导入控件源码2.导入multiplemodel依赖资源,资源地址:https://github.com/chenupt/MultipleModel 3.添加google-collect-1.0.jar依赖包jar包下载地址:http://www.java2s.com/Code/JarDownload/google-collect/google-collect-1.0.jar.zip 4.导入如下必须的文件:attrs.xml、dimens.xml、colors.xml 这三个默认参数文件是必须要ok。 有些麻烦,不过不用着急,可以点击上面的"下载源码" 按钮,这是我整理的完整的工程,包括源码和相应资源,可直接运行。另外,关于PagerModelManager类,作者没有提供,没关系,可以用PagerManager代替。如何使用1. 添加 xmlns:app="http://schemas.android.com/apk/res-auto" 添加命名空间,这是引入自定义控件时,必须添加的。 如下图:2. 接下来就是创建SpringIndicator、ScrollerViewPager实例。 SpringIndicator 就是当前我们讲的这个控件。另外,作者还提供了ScrollerViewPager 的ViewPager,来配合SpringIndicator使用, 其扩展了android.support.v4.view.ViewPager。<?xml version="1.0" encoding="utf-8"?>
3. 初始化ViewPager,以及将Viewpager关联到SpringIndicator: @Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
this.setContentView(R.layout.main);
viewPager = (ViewPager) findViewById(R.id.viewpager);
SpringIndicator springIndicator = (SpringIndicator) findViewById(R.id.indicator);
//页面管理器PagerManager, 该管理器负责管理指示器的文字以及ViewPager用到的所有Fragment
PagerManager manager = new PagerManager();
manager.setTitles(getTitles());//设置指示器的文字
//添加4个ViewPager页面
manager.addFragment(new PageFragment());
manager.addFragment(new PageFragment());
manager.addFragment(new PageFragment());
manager.addFragment(new PageFragment());
ModelPagerAdapter adapter = new ModelPagerAdapter(getSupportFragmentManager(), manager);
viewPager.setAdapter(adapter);
//将ViewPager关联到springIndicator
springIndicator.setViewPager(viewPager);
}
/**
*设置指示器上的文字
**/
private List getTitles(){
return Lists.newArrayList("1", "2", "3", "4");
}属性介绍: siTextColor : 指示器上每个tab的文本颜色 siSelectedTextColor : 当前tab的字体颜色 siTextBg : 整个tab的背景颜色 siTextSize : tab上的字体大小 siIndicatorColor : 设置所有tab的统一的颜色,即圆形区域的颜色 siIndicatorColors : 和siIndicatorColor一样,也是设置tab的颜色的,只是其值是个数组,可分别设置每个tab的颜色 siRadiusMax : 当ViewPager切换时, tab产生粘连效果时的最大圆形半径 siRadiusMin :当ViewPager切换时, tab产生粘连效果时的最小圆形半径