今天在看SwipeMenuListView源代码时,其中的滑动行为是通过在case MotionEvent.ACTION_MOVE:中不断地调用View.layout()方法,当时觉得很奇怪的是为什么没有调用invalidate(),进行手动刷新,于是搜索网上文档,发现其实是在UI控件接收到相应事件后会自动调用重绘方法,不需要人为手动添加,如Button控件,就只需要处理Down、move、up这几个事件,Down的时候重绘控件,move的时候一般也需要重绘控件,当up的时候,重绘控件,然后产生onClick事件。所以大家以后在MotionEvent中对控件进行操作的时候是不用在考虑手动重绘这个功能了。
android UI重绘
最新推荐文章于 2022-04-17 22:07:12 发布