今天遇到一个问题,我的一个view中ondraw方法不停的执行,屏蔽了所有的postInvalidate之后还是一直运行,百思不得其解,于是乎开始一段一段代码的屏蔽,把OnTouch,onScroll等函数全屏蔽了还是不行,于是乎纳闷了,在网上看有人在OnDraw里面调用了addView导致刷新死循环,可是我也没调用啊,一想,可能是OnDraw里面调用什么导致刷新死循环了,于是乎把OnDraw里面除了打印消息那句之外的代码都屏蔽了,哎,还真行了,这样又将OnDraw里面的一句一句找过,最终发现是this.setBackgroundColor(0xffffff);函数导致的,幸好代码不多啊,这屏蔽一下也不要多久,要是上万行代码,找这问题估计得找累死。

 

回头查了一下javadoc 里面介绍很简单 Sets the background color for this view. 看不出什么问题,哪位高人能指点下为什么OnDraw里面调用setBackgroundColor会导致死循环呢!?

 

posted on 2011-08-29 09:44  最简单的  阅读(1343)  评论(0)    收藏  举报