AndroidAndroid 自定义viewView

Android Canvas 实现抽屉动画和翻滚动画

2017-08-01  本文已影响639人  徐正峰

需求

在开发中,有这样的需求,view在某种操作下会有抽屉的展示,而且里面的文字会有翻滚的效果,如下:



即列表向上滑动时,旁边的气泡会折叠(并未折叠所有),向下滑动时,气泡会展开,当有新内容时,里面的文字内容会翻滚显示。

实现

所有的效果都是通过Canvans来实现,也是希望借该博客来和大家来分享一下,当开发时视觉需要实现某些动画效果时,第一想到的不是通过Google去搜索别人的实现,然后去套用,而是沉下心来去思考,去分解动画,然后通过Canvas去实现,当你这样做以后,你会发现实际上并非这么难,才能以不变应万变。这样当需求改变时,才能很快的解决。

抽屉效果

文字在这个过程中怎么处理,完全随着自己业务需要而修改,比方说字体平移,字体变大都可以,只需要拿到这个比例算出值,然后通过canvas来绘制即可,非常方便

翻转效果

android里面的翻转效果很多童鞋会想到用TextSwitcher来实现,但是在这种场景下是做不了的,因为首先这个view是一个圆角矩形,如果把他作为TextSwitcher的子view来进行翻转,会发现有圆角哪一侧有很显然的漏洞,�如下如所示:



所以还是得用Canvas来实现这个动效,视觉要求,当有新内容来时,里面的文字垂直滚动即可。

好,今天的分享就到这里。这里贴出这个效果的 Github Demo地址。�里面还有其他动画哟,多多支持,点个赞哈。

上一篇下一篇

猜你喜欢

热点阅读