微信聊天界面点击语音时,喇叭的动画效果,下面上代码,该类是控制背景变化的工具类,不涉及语音录制和播放。

图片资源:


package xxx;import android.os.Handler;
import android.widget.ImageView;import xxx.R;import java.util.Timer;
import java.util.TimerTask;public class VoicePlayingBgUtil {private Handler handler;private ImageView imageView;private ImageView lastImageView;private Timer timer = new Timer();private TimerTask timerTask;private int i;private int modelType = 1;//类型private int[] leftVoiceBg = new int[] { R.drawable.gray1, R.drawable.gray2, R.drawable.gray3 };private int[] rightVoiceBg = new int[] { R.drawable.green1, R.drawable.green2, R.drawable.green3 };private int[] collectVoiceBg = new int[] { R.drawable.collect_voice_1, R.drawable.collect_voice_2, R.drawable.collect_voice_3 };public VoicePlayingBgUtil(Handler handler) {super();this.handler = handler;}public void voicePlay() {if (imageView == null) {return;}i = 0;timerTask = new TimerTask() {@Overridepublic void run() {if (imageView != null) {if (modelType == 1) {changeBg(leftVoiceBg[i % 3], false);}else if(modelType==2){changeBg(rightVoiceBg[i % 3], false);}else if(modelType==3){changeBg(collectVoiceBg[i % 3], false);}}else {return;}i++;}};timer.schedule(timerTask, 0, 500);}public void stopPlay() {lastImageView = imageView;if (lastImageView != null) {switch (modelType) {case 1:changeBg(R.drawable.gray3, true);break;case 2:changeBg(R.drawable.green3, true);break;case 3:changeBg(R.drawable.collect_voice_3, true);default:changeBg(R.drawable.gray3, true);break;}if (timerTask != null) {timerTask.cancel();}}}private void changeBg(final int id, final boolean isStop) {handler.post(new Runnable() {@Overridepublic void run() {if (isStop) {lastImageView.setImageResource(id);}else {imageView.setImageResource(id);}}});}public void setImageView(ImageView imageView) {this.imageView = imageView;}public void setModelType(int modelType) {this.modelType = modelType;}}

调用方法

 playBgUtil = new VoicePlayingBgUtil(handler);playBgUtil.stopPlay();playBgUtil.voicePlay();

Android仿微信聊天语言点击喇叭动画效果相关推荐

  1. android 仿微信聊天界面 以及语音录制功能,Android仿微信录制语音功能

    本文实例为大家分享了Android仿微信录制语音的具体代码,供大家参考,具体内容如下 前言 我把录音分成了两部分 1.UI界面,弹窗读秒 2.一个类(包含开始.停止.创建文件名功能) 第一部分 由于6 ...

  2. android格式化时间中文版,Android 仿微信聊天时间格式化显示功能

    本文给大家分享android仿微信聊天时间格式化显示功能. 在同一年的显示规则: 如果是当天显示格式为 HH:mm 例:14:45 如果是昨天,显示格式为 昨天 HH:mm 例:昨天 13:12 如果 ...

  3. Android仿微信聊天界面

    今天说说android的仿微信聊天界面,我只想说两个字:坑爹 项目已经传到了github: https://github.com/hebiao6446/Hantu-android- 还好我写过iOS仿 ...

  4. android 加号弹出菜单,Android仿微信、qq点击右上角加号弹出操作框

    Android仿微信.qq点击右上角加号弹出操作框,先上图,类似于下图这种,点击加号,会弹出一个对话框,如下图: 微信: 自己实现: 接下来,我们来实现此功能: 其实,实现原理就是,点击"+ ...

  5. Android自定义弹窗模仿微信,Android仿微信、qq点击右上角加号弹出操作框

    Android仿微信.qq点击右上角加号弹出操作框,先上图,类似于下图这种,点击加号,会弹出一个对话框,如下图: 微信: 自己实现: 接下来,我们来实现此功能: 其实,实现原理就是,点击"+ ...

  6. android仿微信聊天功能,Android高仿微信聊天界面代码分享

    微信聊天现在非常火,是因其界面漂亮吗,哈哈,也许吧.微信每条消息都带有一个气泡,非常迷人,看起来感觉实现起来非常难,其实并不难.下面小编给大家分享实现代码. 先给大家展示下实现效果图: OK,下面我们 ...

  7. Android 仿微信多语言切换

    目录 一.简介 二.效果预览 三.实现步骤 1.功能实现 2.配置多语言文件 四.MultiLanguageUtils分析 五.Demo地址 六.内容推荐 一.简介 我想搜到这篇文章的朋友应该不需要我 ...

  8. android 仿微信聊天时间格式化显示

    仿微信聊天时间格式化显示. 在同一年的显示规则: 如果是当天显示格式为 HH:mm 例:14:45 如果是昨天,显示格式为 昨天 HH:mm 例:昨天 13:12 如果是在同一周 显示格式为 周一 H ...

  9. android仿微信的activity平滑水平切换动画,Android实现简单底部导航栏 Android仿微信滑动切换效果...

    Android实现简单底部导航栏 Android仿微信滑动切换效果 发布时间:2020-10-09 19:48:00 来源:脚本之家 阅读:96 作者:丶白泽 Android仿微信滑动切换最终实现效果 ...

最新文章

  1. CSDN湘苗培优|高起点步入职场,快人一步!
  2. web app会遇到那些问题
  3. 罗盘时钟编码代码_安全研究 | 利用macOS Dock实现代码的持久化执行
  4. Windows phone 7 之ToggleSwitch
  5. 转:matlab中print、fprintf、scanf、disp函数简要语法介绍
  6. Java输出字符串格式问题 .UnknownFormatConversionException
  7. 自然语言处理(NLP)-第三方库(工具包):AllenNLP【用于构建各种NLP模型的库;基于PyTorch】
  8. 第二人生的源码分析(七十六)判断程序运行多个实例
  9. HTML的弹性布局用法
  10. 算法——实现随机拿到30道不重复的20以内的加减法题目
  11. 2021-10-11 今日总结
  12. 计算机设备驱动程序的安装与更新,电脑系统驱动如何安装更新?
  13. JAVA:实现QuickSort快速排序算法(附完整源码)
  14. dsp31段最佳调音图_DSP调音技术~DSP功放31段EQ详解~DSP调音师推荐
  15. python开发大全、系列文章、精品教程
  16. 状态的进行中、未开始、已结束状态的排序
  17. 2021年中国中药饮片产业销售规模及重点企业对比分析[图]
  18. matlab simulink博客,MATLAB Simulink仿真数据记录
  19. 中央广播电视总台4K超高清频道国庆开播
  20. 一个用C实现的科学计算器

热门文章

  1. simple2.py
  2. JavaEE笔记(九)
  3. unity3d 多人寻路堵塞堆叠问题
  4. Stack Overflow 2016 最新架构探秘
  5. loj 1251(2-sat + 输出一组可行解)
  6. 关闭 Windows Server 2008 用户权限控制(UAC)
  7. pwnable.tw unexploitable 分析
  8. 中国企业云计算应用现状及需求
  9. 【2018北京集训(六)】Lcm
  10. 设计模式——模版方法