`

Android的repaint函数

阅读更多

昨天安装了Android  SDK1.5 和ADT0.9.1。 
在安装时发现,要在Eclipse安装ADT时还必须安装些其他的插件,自动寻找依赖关系后就必须联网安装这些插件。如果没有网络,貌似就不能安装成功了。 

以上为废话。 

写了一个View,在上面画了点东西,不过没有找到View有repaint函数,寒。 
event函数叫onDraw ,难道叫reDraw,查了下依然没有此函数。 
最后百度了下,终于找到了Android 的repaint函数。 内容如下: 

1、repaint()方法与invalidate()/postInvalidate()方法 


如果去读API,我们可以发现J2ME中Canvas的repaint()与Android 中View的invalidate()/postInvalidate()方法实现了相同的功能(连说明文字几乎都一样…),

 

但是invalidate()/postInvalidate()两者却有着区别:invalidate() 只能在UI这个线程里通过调用onDraw (Canvas canvas)来update屏幕显示,

 

而postInvalidate()是要在non-UI线程里做同样的事情的。这就要求我们做判断,

 

哪个调用是本 线程的,哪个不是,这在做多线程callback的时候尤为重要。而在J2ME中,不管怎样直接调用repaint()就好了

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics