在做一个类似android4.0默认环状解锁的界面的时候,发现拖动圆环至相应位置,引起图片变化时,会使圆环的View在其中央的原位置闪一下。
由于我的圆环是重写的ImageView里面的onTouch方法,在onTouch方法内根据位置判断修改图片资源的。设断点检验后发现,虽然修改图片资源是在onTouch方法内,但是圆环在原位置闪烁是发生在修改图片资源的onTouch方法执行之后,下一次onTouch方法执行之前。
= = 。原谅我新手还看不懂View的源代码。找不到实际原因。
最后想解决还是不难的,重写的ImageView的layout方法,因为闪回原位置也会调用这个方法。在layout方法里加一些判断就可以避免闪烁了。具体怎么判断根据界面的实际需求自己来定。