转载请注明出处:http://blog.csdn.net/footballclub/
前言
最近项目中需要加一个圆点指示器,在切换页面的时候使用,网上有开源的项目viewflow和viewpageIndicator,这两者都有很好的效果,但遗憾的是都有局限性,一个是只能用于viewflow,另一个只能用在viewpage上面,而我项目中的页面切换用的是自定义View,上面两个项目中的圆点指示器都不能拿来直接用,于是就借鉴viewflow做了一个简单易用的通用圆点指示器。
效果图
用法介绍
简单用法
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
......
gridview.setOnPageChangedListener(new OnPageChangedListener() {
@Override
public void onPageChanged(PagedDragDropGrid sender, int newPageNumber) {
//当页面切换的时候调用此方法改变被选中的圆点
indicator.setCurrentPage(newPageNumber);
}
});
//设置总共的页数
indicator.initData(adapter.pageCount(), 0);
//设置当前的页面
indicator.setCurrentPage(0);
//注:如果需要在切换页面时同时改变pagecount,initData和setCurrentPage可以同时使用。
}
按照上面做了以后就能正常使用了,如果你想定制圆点的大小,圆点间的间距,选中圆点和未选中圆点的颜色,那么请继续往下看吧。
详细用法
可配置的属性:
<declare-styleable name="XCircleIndicator">
<!-- 被选中圆点的颜色 -->
<attr name="fillColor" format="co