Android frame animation 实现 halo 效果

本文介绍如何利用Android帧动画实现类似背景人物后面的光圈闪烁效果,即Halo效果。通过在drawable目录下放置动画文件并进行配置,可以达到预期的视觉呈现。
摘要由CSDN通过智能技术生成

先说一下最终呈现的效果,就像是背景人物后面有一个光圈在闪烁。原理是利用的android帧动画播放技术。源码下载


关键步骤:

1,动画文件,放在drawable目录下

<?xml version="1.0" encoding="utf-8"?>
<!-- 
	根标签为animation-list,其中oneshot代表着是否只展示一遍,设置为false会不停的循环播放动画
	根标签下,通过item标签对动画中的每一个图片进行声明
	android:duration 表示展示所用的该图片的时间长度
 -->
<animation-list
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:oneshot="false"
  >
    <item android:drawable="@drawable/ws_rankhighscoreorderanimationimage7" android:duration="76"></item>
  	<item android:drawable="@drawable/ws_rankhighscoreorderanimationimage6" android:duration="76"></item>
  	<
Android实用控件自定义逼真相机光圈View 作者:佚名 来源:吾爱源码 2016-08-12 14:46:40 0 最近手机界开始流行双摄像头,大光圈功能也应用而生。所谓大光圈功能就是能够对照片进行后期重新对焦,其实现的原理主要是对拍照期间获取的深度图片与对焦无穷远的图像通过算法来实现重新对焦的效果。 在某双摄手机的大光圈操作界面有个光圈的操作图标,能够模拟光圈调节时的真实效果,感觉还不错,于是想着实现效果。现在把我的实现方法贡献给大家,万一你们公司也要双摄手机呢?( ̄┰ ̄*) 首先,百度一下光圈图片,观察观察,就可以发现其关键在于计算不同的光圈值时各个光圈叶片的位置。为了计算简便,我以六个直边叶片的光圈效果为例来实现(其他形式,比如七个叶片,也就是位置计算稍微没那么方便;而一些圆弧的叶片,只要满足叶片两边的圆弧半径是一样的就行。为什么要圆弧半径一样呢?仔细观察就可以发现,相邻两叶片之间要相互滑动,而且要保持一样的契合距离,根据我曾今小学几何科打满分的经验可以判断出,等径的圆弧是不错滴,其他高级曲线能不能实现效果,请问数学家( ̄┰ ̄*)!其他部分原理都是一样的)。 制作效果图: 先说明一下本自定义view的主要内容: 1.本效果实现就是在光圈内六边形六个角上分别绘制六个光圈叶片 2.根据不同的光圈值计算出内六边形的大小,从而计算每个六边形的顶点的位置 3.设计叶片。也可以让美工MM提供,本方案是自己用代码画的。注意预留叶片之间的间隔距离以及每个叶片的角度为60° 4.定义颜色、间隔等自定义属性 5.上下滑动可以调节光圈大小 6.提供光圈值变动的监听接口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值