package com.weixin.android; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.graphics.drawable.AnimationDrawable; import android.media.MediaPlayer; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import com.weixin.android.view.AudioRecorderButton; import com.weixin.android.view.AudioRecorderButton.AudioFinishRecorderListener; public class MainActivity extends Activity { private ListView mListview; private AudioRecorderButton mAudioRecorderButton; private ArrayAdapter<Recorder> mAdapter; private List<Recorder> mDatas = new ArrayList<Recorder>(); private View animView; private static int mIndex =-1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mListview = (ListView) findViewById(R.id.listview); mAudioRecorderButton = (AudioRecorderButton) findViewById(R.id.button); mAudioRecorderButton.setAudioFinishRecorderListener(new AudioFinishRecorderListener() { @Override public void onFinish(float secends, String filePath) { Recorder recorder = new Recorder(secends, filePath); mDatas.add(recorder); mAdapter.notifyDataSetChanged(); mListview.setSelection(mDatas.size()-1); } }); mAdapter = new RecorderAdapter(this, mDatas); mListview.setAdapter(mAdapter); mListview.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View view, int arg2, long arg3) { if (animView !=null) { animView.setBackgroundResource(R.drawable.adj); animView=null; } // 播放动画, animView =view.findViewById(R.id.id_recorder_anim); animView.setBackgroundResource(R.drawable.play_anim); AnimationDrawable anim =(AnimationDrawable) animView.getBackground(); if (mIndex==arg2) { MediaManager.relese(); animView.setBackgroundResource(R.drawable.adj); mIndex=-1; }else{ anim.start(); //播放音频 MediaManager.playSound(mDatas.get(arg2).filePath,new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer arg0) { animView.setBackgroundResource(R.drawable.adj); } }); mIndex=arg2; } } }); } @Override protected void onPause() { // TODO Auto-generated method stub super.onPause(); MediaManager.pause(); } @Override protected void onResume() { // TODO Auto-generated method stub super.onResume(); MediaManager.resume(); } @Override protected void onDestroy() { super.onDestroy(); MediaManager.relese(); } class Recorder { float time; String filePath; public Recorder(float mtime, String mfilePath) { super(); this.time = mtime; this.filePath = mfilePath; } public float getTime() { return time; } public void setTime(float time) { this.time = time; } public String getFilePath() { return filePath; } public void setFilePath(String filePath) { this.filePath = filePath; } } }
微信发送语音
猜你喜欢
转载自274137570-qq-com.iteye.com/blog/2231850
今日推荐
周排行