垂直SeekBar实现

December 13, 2011

Android

公司有个项目需要一个垂直的SeekBar,但是Android上没有,很不明白为什么会没有。网上找了一下大部分的解决方案是重写SeekBar,然后翻转一下。那个效果还是可以的。可能是我还没研究明白,或者是我的项目需求比较特殊,实现不了我要的效果,主要是跟美术给的效果图有很大的差异,虽然上头说不一定要很精确,不过我还是觉得尽量跟效果图一致吧,万一哪天有人看着不行,那个时候再改就麻烦咯……

具体的代码我就不写了,代码不在这个电脑上,也是公司的项目,不贴为好,而且我那代码也是很臭的。大概的思路就是继承View重写,主要就是onDraw方法和onTouchEvent方法了,主要还是一些坐标的定义,那些东西捋清楚了,其实也很简单。可能是我脑袋的哪个部位不发达,重写SeekBar坐标换算我很头疼,还是直接继承View来实现简单点。

Note(2012,Feb 08):最终的解决方案还是继承SeekBar,然后onDraw里做一下翻转。不过SeekBar总是不大好用,根据美术给的效果图和资源图,总是实现不了,据说是因为thumb会把整个SeekBar撑大,然后导致变样了。据说绝对值的宽高可以解决这个问题,但是不管是从什么角度来说,绝对的宽高都不是一个好的solution。

--- EOF ---

添加新评论