原因:
安卓自带的控件没有镜像功能,没关系我们可以自己实现一个。其实很简单,重写系统控件的draw方法,不是ondraw方法。具体可以看源码
解决方案:
这是我写的Seekbar的镜像,公司需求
package com.finals.oilrank.util.view; import android.content.Context; import android.graphics.Canvas; import android.util.AttributeSet; import android.widget.SeekBar; public class MySeekBar extends SeekBar { public MySeekBar(Context context, AttributeSet attrs) { super(context, attrs); } @Override public void draw(Canvas canvas) { canvas.save(); canvas.scale(-1, 1, getWidth()/2, getHeight()/2); super.draw(canvas); canvas.restore(); } }
这个很简单了。只是还有问题,就是Touch事件你要处理下,当然这里只是镜像的写法,触摸的愿意也一样。
时间: 2024-11-05 18:43:38