一个文件实现安卓滚轮选择控件

这一次跟大家分享的是一个非常轻量的滚轮选择控件,只有1个文件,一共400多行代码,源码已经上传到github:
https://github.com/huzenan/EasyPickerView

我们知道如果想在项目里,尤其是大的项目里使用别人造好的“轮子”,假如说我只想用一个好看的滚轮选择控件,而必须引入好几个文件甚至十几个文件,那真的是很不情愿的。这个时候,非常轻量级的EasyPickerView就能解决问题了,只要一个文件,代码也很少,心情好了还能做些修改以适应自己的需求,还不是美滋滋的。


先看看效果

easypickerview


用法

效果还是很棒棒的,用法也很简单,首先是布局文件:

xml

支持以下几个属性:
- epvTextSize:字符的大小
- epvTextColor:字符的颜色
- epvTextPadding:字符的间距
- epvTextMaxScale:中间字符缩放的最大值
- epvTextMinAlpha:两端字符最小alpha值
- epvRecycleMode:是否为循环模式
- epvMaxShowNum:显示多少个字符

看完会发现,如果最后一个属性epvMaxShowNum设置了偶数会怎么样呢,效果如下:

easypickerview

设置为偶数的时候,字符上下各显示一半。

然后就是在使用时设置一下数据集,再设置一下监听了:

listener


原理

整个View的原理,是在触摸过程中改变一些属性值,然后重绘整个View来达到滚动的效果。过程中用于控制滚动效果的属性值包括:
- curIndex:当前选中项
- offsetIndex:本次滚动中偏移的项
- offsetY:本次滑动的Y坐标偏移量
- oldOffsetY:在fling之前的offsetY

后面会解释这几个属性值的作用。


  • 11
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 22
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值