Android UI动画之防雷达信号,canvas drawCircle实现,伴随随机icon闪现

本文介绍了一款大学校园移动社交应用的Android开发过程,特别是其中的寻找配对界面的动画效果。动画包括中间头像、圆环扩散动画以及随机爱心动画。圆环动画通过不断更新配置并重绘实现,爱心动画则利用Matrix进行位置和缩放调整。文章鼓励读者动手实践,提供GitHub资源以供参考。
摘要由CSDN通过智能技术生成

    大家好,本人现在在南京一家移动互联网公司做Android开发,公司项目是一款大学校园移动社交应用,目前正在紧张的开发阶段,预计圣诞节前后就会上线。该项目中涉及到很多很炫的动画效果,今天就跟大家分享一下我刚做完的一个寻找配对界面,废话不说先上图:

    稍微解释一下这个界面的动画效果,最中间是自己的头像或者是产品的logo,周围的白色圆环像波纹一样,慢慢变大,在变大过程中圆环的radius和strokeWidth逐渐变大,透明度alpha逐渐变小,好像雷达一样,向外发射信号。这是主体效果,另外还有一些随机的爱心在整个屏幕以scale和alpha结合的动画效果呈现出来,跑出来的效果个人觉得还是比较漂亮的,有兴趣的可以访问我的Github-SearchingView,checkout出来,run一下,喜欢的话希望在我的Github上给个star,谢谢废话不多说直接上图。




    好,下面我就详细介绍一下该界面开发的一些思路和细节问题。首先自定义一个继承自View类的SearchingView,然后重写其onDraw方法,我们可以将整个动画分为一下三个部分来做:1. 中间的头像;2. 圆环动画;3. 随机的爱心动画。

    1. 首先从最简单的说起,界面中间的用户头像,其实就是BitmapFactory.decodeResource(getResources(), R.drawable.bg)获得bitmap,然后调用canvas的drawBitmap方法画上去的,这个没什么不多解释,不太明白的可以参考下面的代码段。

private void drawMiddlePicture(Canvas canvas, int width, int height) {
	if (logoBitmap != null) {
		Paint paint = new Paint();
		paint.setAntiAlias(true);
		float left = (width - logoBitmap.getWidth()) / 2;
		float top = (height - logoBitmap.getHeight()) / 2;
		canvas.drawBitmap(logoBitmap, left, top, paint);
	}
}</span>
    

    2. 其次就是圆环动画,大致思路就是用一LinkedList存放若干圆环配置CircleConfig,然后在onDraw方法里面遍历这个list,通过CircleConfig里面的配置信息配置Paint画笔,然后

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值