mediaplay的运用以及详细用法

原创 2015年11月17日 21:45:26

先说一个关于制作画线的版的问题,

画线版,首先你想到的肯定是一个动态的,因为起点终点不固定,动态的布局就要View,新建一个类,继承View类,要用到,起点,终点坐标,还有就onTouchEvent

用来监听你的手的动作。之后,还要刷新画板。

代码如下

package com.example.androidmedia;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.view.MotionEvent;
import android.view.View;

public class Huaxian extends View {
	private float x0, y0;//起点
	private float x1, y1;//终点

	public Huaxian(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}

	@Override
	protected void onDraw(Canvas canvas) {
		Paint p = new Paint();//画笔
		canvas.drawLine(x0, y0, x1, y1, p);
		super.onDraw(canvas);
	}

	@Override
	public boolean onTouchEvent(MotionEvent event) {
		switch (event.getAction()) {
		case MotionEvent.ACTION_DOWN:
           x0=event.getX();
           y0=event.getY();
           
			break;
		case MotionEvent.ACTION_MOVE:
              x1=event.getX();
              y1=event.getY();
			break;
		case MotionEvent.ACTION_UP:
			 x1=event.getX();
             y1=event.getY();
			break;

		default:
			break;
		}
		invalidate();//刷新
		return true;
	}

}

mediaplay的播放音乐

package com.example.androidmedia;
<span style="font-size:18px;">
import java.io.IOException;



import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class MusicActivity extends Activity {

	private Button id;
	private MediaPlayer mp;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_music);
		id = (Button) findViewById(R.id.bt_pause);
		mp = new MediaPlayer();//新建Mediaplay
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.activity_music, menu);
		return true;
	}

	public void click(View v) {
		switch (v.getId()) {
		case R.id.bt_start:
			mp.reset();//

			try {

				mp.setDataSource("/mnt/sdcard/music.mp3");//链接文件库,方法多种,
				mp.prepare();
				mp.start();

			} catch (IOException e) {

				e.printStackTrace();
			}
			break;
		case R.id.bt_pause:
			if (mp != null) {
				if (mp.isPlaying()) {
					mp.pause();
					id.setText("继续");
				} else {
					mp.start();
					id.setText("暂停");
				}
			}
			break;
		case R.id.bt_stop:
			if (mp != null) {
				mp.stop();
				mp.release();
				this.finish();
			}
			break;
		case R.id.bt_restart:
			if (mp != null) {
				mp.stop();
				try {
					mp.prepare();
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
				mp.seekTo(0);//从头开始播放
				mp.start();
			}
			break;
		default:
			break;
		}
	}

}
</span>
mediaplay要遵守其生命周期图的运行过程,来调用某个方法



媒体的播放与此差不多,只要添加一个SurfaceView。


GreenDao3.2.2详细用法包括集成,运用

转载请标明地址http://blog.csdn.net/qq_30034925/article/details/54729734  GreenDao官网说它是最好的数据库框架,我们也当真吧,反真它的...

最全面的DataSet用法详细

  • 2017年08月14日 20:51
  • 6.14MB
  • 下载

const用法详细解释

  • 2014年11月04日 09:20
  • 98KB
  • 下载

Android4.2.2多媒体架构MediaPlay的创建过程分析(一)

本文均属自己阅读源码的点滴总结,转账请注明出处谢谢。 欢迎和大家交流。qq:1037701636 email:gzzaigcn2012@gmail.com Android源码版本V...

EXCEL函数用法及详细例集

  • 2013年02月21日 15:17
  • 163KB
  • 下载

表面效应单元详细用法步骤

  • 2014年08月26日 15:14
  • 1.18MB
  • 下载

MediaPlay的简单音频播放

MediaPlayer.java //1.采用bindService是因为保证每次进来后可以重新绑定click事件,当然如果已经startService,那么unbindservice,只会unbin...
  • cys1991
  • cys1991
  • 2015年03月15日 20:18
  • 379

Linux/Unix AWK详细用法中文图解

  • 2014年09月01日 15:49
  • 529KB
  • 下载

kindeEdit用法Demo 详细注释

  • 2013年01月25日 15:13
  • 4.87MB
  • 下载

批处理命令之Start的详细用法\批处理打开IE窗口最大化

start /max c:\progra~1\Intern~1\iexplore.exe "http://www.baidu.com" 最大化打开IE网站为:http://www.baidu.com...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mediaplay的运用以及详细用法
举报原因:
原因补充:

(最多只允许输入30个字)