android呼吸灯动画,Android高德地图自定义定位蓝点实现呼吸灯功能
还是先上个图吧:
cluster.gif
说下实现的原理,首先这个定位小蓝点是由两张图片组成的,最底层的一张白色圆形图片以及上一层的蓝色圆形图片,只要不停的对蓝色图片进行透明度动画操作就可以实现这个效果了。
看下高德的API
类 Animation
java.lang.Object
com.amap.api.maps.model.animation.Animation
直接已知子类:
[AlphaAnimation](http://a.amap.com/lbs/static/unzip/Android_Map_Doc/3D/com/amap/api/maps/model/animation/AlphaAnimation.html), [AnimationSet](http://a.amap.com/lbs/static/unzip/Android_Map_Doc/3D/com/amap/api/maps/model/animation/AnimationSet.html), [RotateAnimation](http://a.amap.com/lbs/static/unzip/Android_Map_Doc/3D/com/amap/api/maps/model/animation/RotateAnimation.html), [ScaleAnimation](http://a.amap.com/lbs/static/unzip/Android_Map_Doc/3D/com/amap/api/maps/model/animation/ScaleAnimation.html), [TranslateAnimation](http://a.amap.com/lbs/static/unzip/Android_Map_Doc/3D/com/amap/api/maps/model/animation/TranslateAnimation.html)
可以看出来,其实跟android的一样,但是有个坑爹就是setRepeatCount(); setRepeatMode();这两个方法居然没有。。这就有点尴尬了,那我们还是从头来捋捋。
1.实现定位蓝点自定义图标
//如果marker没有新建就新建,新建了就直接设定位置
if (mylocation == null) {
//新建一个marker对象
MarkerOptions markerOptions1 = new MarkerOptions();
markerOptions1.icon(big); //设置底图图片
markerOptions1.position(new LatLng(location.getLatitude(), location.getLongitude())); //设置位置
bigPosition = aMap.addMarker(markerOptions1); //地图添加marker
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.icon(small);//设置上层图片
markerOptions.position(new LatLng(location.getLatitude(), location.getLongitude()));
mylocation = aMap.addMarker(markerOptions);
} else {
bigPosition.setPosition(new LatLng(location.getLatitude(), location.getLongitude()));
mylocation.setPosition(new LatLng(location.getLatitude(), location.getLongitude()));
}
2.设置动画
AlphaAnimation alpha = new AlphaAnimation(1, 0.2f);//新建透明度动画
alpha.setDuration(1500);//设置动画持续时间
mylocation.setAnimation(alpha);//图片设置动画
mylocation.startAnimation();//开始动画
mylocation.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart() {
}
@Override
public void onAnimationEnd() {
AlphaAnimation alpha = new AlphaAnimation(0.2f, 1);
alpha.setDuration(1500);
mylocation.setAnimation(alpha);
mylocation.startAnimation();
}
});
现在就实现了一次呼吸灯的效果。
3.实现持续的呼吸灯效果
Timer timer = new Timer();
TimerTask timerTask = new TimerTask() {
@Override
public void run() {
anim();
}
};
timer.schedule(timerTask, 0, 3000);
其实就是用一个计时器反复的播放这个动画罢了,至此,呼吸灯效果就算实现好了。
android呼吸灯动画,Android高德地图自定义定位蓝点实现呼吸灯功能相关推荐
- Android中配置高德地图和定位蓝点
最近一直在学习android,学到地图这里,遇到的坑也不少,所以就把它分享出来,一和大家一起学习,二为以后写项目看, 一.获取key 1.创建应用 首先,您得上(高德地图开放平台官网)注册一个账号,当 ...
- 高德地图去掉定位按钮_高德地图自定义定位按钮及点击事件
最近使用了一下高德地图,使用期间将出现的问题记录一下.文中出现不对的地方,悉听各路大神指正.2018年11月23日15:59:46 1.首先我们初始化map控制对象aMap .if (aMap ==n ...
- Android 高德地图自定义线路规划选择方案之后按照方案进行导航
Android 高德地图自定义线路规划选择方案之后按照方案进行导航 因为我这边导航需求的问题,导致我这边不能使用高德地图官方的线路规划和导航.所以我这边线路规划和导航界面都是根据高德地图那边给的api ...
- Android高德地图自定义Mark并实现聚合效果
Android高德地图自定义Mark并实现聚合效果 起因:公司本来项目里面用到了高德地图,然后最近老板看见别人的APP里面有个聚合的这个功能,老板:"这个效果能不能实现,我也要!" ...
- Android高德地图自定义Markers的例子
下文为各位重点介绍关于Android高德地图自定义Markers的例子,希望这篇文章能够让各位理解到Android高德地图自定义Markers的方法. 之前的博客里说了地图的嵌入和定位,今天就说说在地 ...
- Android 高德地图 自定义Location小蓝点
设置自定义定位蓝点 自定义Location小蓝点,自定义功能 private static final int STROKE_COLOR = Color.argb(180, 3, 145, 255); ...
- Android Studio之高德地图实现定位和3D地图显示
在应用开发中,地图开发是经常需要使用的"组件",国内比较出名的是就是百度地图和高德地图. 此博客讲的是高德地图实现定位和3D地图显示,并标注相应位置,话不多说,先看看效果,在上代码 ...
- 高德地图聚合android,GitHub - lingyanluoxue/android-togetherMap: 实现高德地图的marker聚合功能...
android-togetherMap 本文我将讲解一下我最近实现的高德地图Marker的聚合功能.在项目开发中需要使用到地图Marker的聚合功能,但是高德地图并没有实现对Marker的聚合功能,所 ...
- android高德地图默认当前位置,【报Bug】1.9.2 android 高德地图无法定位到当前位置...
详细问题描述 (DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题) [内容] 1.9.2版本 a ...
最新文章
- Metasploit resource命令技巧
- Nosql数据库之mongodb c++使用实例
- java图片预览上传_Java实现图片上传预览 (使用ajax提交)
- primefaces_通过OmniFaces缓存组件以编程方式缓存PrimeFaces图表
- jsp 导入java类_JSP页面导入问题。类文件放在WEB-INF / classes中的包中
- ORACLE计算表引占用空间大小
- vue 子页面调用父页面的参数_Flutter子组件调用父组件方法修改父组件参数
- 如何不让tomcat在启动时弹窗_Tomcat 在 Spring Boot 中是如何启动的
- Linux下virtualenv与virtualenvwrapper详解
- xshell过期/安装教程
- 服务器lsass系统错误,lsass.exe-系统错误,终结点格式无效 windows2003服务器出错
- Django项目实战——12—(Docker和FastDFS上传和下载文件、浏览器下载并渲染图片(nginx)、录入商品数据和图片数据、首页广告)
- 这些一夜爆火的国产软件,却一度被大众误以为是外国佬研发的。。。
- 找出只包含1的最大矩形c语言,一些简单的编程练习题
- 一阶导数和二阶导数的意义
- 网站seo优化,网站SEO优化方案
- mysql 表数据备份和恢复_mysql 数据备份与恢复
- 在自动UNDO管理情况下,如何手工增加undo段
- MySQL 09 DQL → select 初识查询数据和别名的使用
- Vue select的使用以及select设置默认选中,element select联动不能选择问题
热门文章
- 系统异常和不稳定的原因总结
- “远程服务器返回错误: (404) 未找到”的正确解决方法
- xpath定位中starts-with、contains和text()的用法
- hashtable、hashmap、ConcurrentHashMap、treemap的区别
- 修改新版am335x支持1G主频的方法[来自A Xian调试记录]
- Input.GetAxis
- azure java_Azure File服务(5): Java开发
- java编程思想 入门_java编程思想学习(基础)
- java对象的初始化顺序_Java对象初始化顺序
- mysql.server 文件是什么_mysql的启动脚本mysql.server及示例配置文件