Android自定义view-几种刷新方法的区别

运行动画刷新线程 在ui线程 不执行invalidate()
postOnAnimation(Runnable)

使当前界面无效 会触发computeScroll()和onDraw computeScroll先触发
invalidate()

可用于ui或者非ui线程中刷新界面 把invalidate()添加到ui队列运行
postInvalidate()

可用于ui或者非ui线程中刷新界面 在下一个时间动画帧上invalidate()
postInvalidateOnAnimation()

computeScroll()//主要用于动画刷新界面 一般在触摸滑屏的时候重写

1
2
3
4
@Override
public void computeScroll() {
}