博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android仿网易云音乐:留声机效果
阅读量:6853 次
发布时间:2019-06-26

本文共 1660 字,大约阅读时间需要 5 分钟。

参考文章:

效果图

资源1(当前用的是这个)

资源2

思路:准备2张图片,1张是圆盘碟片,1张是指针图片。播放的时候圆盘碟片开始旋转,指针图片旋转一定角度到圆盘碟片上;暂停则圆盘碟片停止旋转,指针图片旋转一定角度离开圆盘碟片图片,再次播放的时候圆盘碟片是恢复上次旋转的角度,调用resume方法。

复制代码

ObjectAnimator mAlbumAnimator;ObjectAnimator mAlbumPointerAnimator;  protected void onCreate(@Nullable Bundle savedInstanceState) {initAnim();}    private void initAnim() {    //专辑圆圈的动画    mAlbumAnimator = ObjectAnimator.ofFloat(mAlbumBgIv, "rotation", 0f, 360f);    mAlbumAnimator.setDuration(10000);    mAlbumAnimator.setRepeatCount(-1);    mAlbumAnimator.setRepeatMode(ValueAnimator.RESTART);//动画重复模式    mAlbumAnimator.setInterpolator(new LinearInterpolator());//匀速旋转}private void onMediaPlayingChanged(AppManager.MediaState mediaState) {    boolean isPlaying = mediaState.isPlaying;       if (isPlaying) {        albumPointAnimPlay();        if (mAlbumAnimator.isPaused()){            mAlbumAnimator.resume();        }        if (!mAlbumAnimator.isRunning()){            mAlbumAnimator.start();        }    } else {        albumPointAnimPause();        mAlbumAnimator.pause();    }}//指针private void albumPointAnimPause() {    Log.d(TAG, "albumPointAnimPause: " + mAlbumPointerIv.getRotation());    mAlbumPointerAnimator = ObjectAnimator.ofFloat(mAlbumPointerIv, "rotation", mAlbumPointerIv.getRotation(), -30f);    mAlbumPointerAnimator.setDuration(1000);    mAlbumPointerAnimator.start();}private void albumPointAnimPlay() {    Log.d(TAG, "albumPointAnimPause: " + mAlbumPointerIv.getRotation());    mAlbumPointerAnimator = ObjectAnimator.ofFloat(mAlbumPointerIv, "rotation", mAlbumPointerIv.getRotation(), 0);    mAlbumPointerAnimator.setDuration(1000);    mAlbumPointerAnimator.start();}复制代码

转载地址:http://sefyl.baihongyu.com/

你可能感兴趣的文章
微信支付宝签约流程总结
查看>>
Spring WebSocket实现消息推送
查看>>
Percona 数据库
查看>>
基础概念:Oracle数据库、实例、用户、表空间、表之间的关系
查看>>
二叉树创建及遍历 (递归&非递归)
查看>>
洛谷P4777 【模板】扩展中国剩余定理(EXCRT)
查看>>
Git 中文教程
查看>>
javascript高级程序设计学习笔记
查看>>
python 用装饰器写登录
查看>>
C# 调用Java的webService
查看>>
[学习笔记]最小割之最大权闭合子图
查看>>
QComboBox 树形视图选择
查看>>
常用的日期工具类
查看>>
Source Insight 中文注释为乱码解决办法(完美解决,一键搞定)
查看>>
系统整理
查看>>
jenkins+Ant+Jmeter性能自动化测试
查看>>
DroidPilot 发布微信公众帐号啦~
查看>>
50.检测两个节点的包含关系
查看>>
Spring系列之二——Spring初体验
查看>>
【Web动画】SVG 线条动画入门
查看>>