Android按钮点击播放音乐,再次点击停止音乐

编程入门 行业动态 更新时间:2024-10-27 20:27:38
本文介绍了Android按钮点击播放音乐,再次点击停止音乐的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个按钮,当我点击它播放音乐,如何做,当我第二次点击,停止音乐?

Button two =(Button)this.findViewById(R.id.button2); final MediaPlayer mp2 = MediaPlayer.create(this,R.raw.two); two.setOnClickListener(new OnClickListener(){ public void onClick(View v){ mp2.start(); } } ;

好,这个工作原理:

Button one =(Button)this.findViewById(R.id.button1); final MediaPlayer mp1 = MediaPlayer.create(this,R.raw.n); one.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v){ if(mp1.isPlaying()){ mp2.pause(); } else { mp2.start(); } ; }});

Pause以上的那个工作,但如果我想停止音乐,它不工作。 以下不工作:

@Override public void onClick(View v){ if(mp1.isPlaying()){ mp2.stop(); } else { mp2.start(); } ; }});

我得到错误:开始调用状态0 错误0) {b> android / media / MediaPlayer.htmlrel =nofollow> developer.android/reference/android/media/MediaPlayer.html ,我想你可以这样做:

按钮two =(Button)this.findViewById(R.id.button2); final MediaPlayer mp2 = MediaPlayer.create(this,R.raw.two); two.setOnClickListener(new OnClickListener(){ public void onClick(View v){ //如果音乐正在播放 if mp2.isPlaying()== true) //暂停音乐播放器 mp2.pause(); //如果没有播放 else //恢复音乐播放器 mp2.start(); } });

您实际上可以写

if(mp2.isPlaying())

>

if(mp2.isPlaying()== true)

这只是为了了解发生了什么。

I have a button, when I click it plays music, how to do it, when I click second time, to stop the music?

Button two = (Button)this.findViewById(R.id.button2); final MediaPlayer mp2 = MediaPlayer.create(this, R.raw.two); two.setOnClickListener(new OnClickListener(){ public void onClick(View v) { mp2.start(); } });

Ok, this one works:

Button one = (Button)this.findViewById(R.id.button1); final MediaPlayer mp1 = MediaPlayer.create(this, R.raw.n); one.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { if (mp1.isPlaying()) { mp2.pause(); } else { mp2.start(); } ; }});

The one with Pause above it works, but If I want to stop the music, it does not work. Following not working:

@Override public void onClick(View v) { if (mp1.isPlaying()) { mp2.stop(); } else { mp2.start(); } ; }});

I get error: start called in state 0 error (-38, 0)

解决方案

According to developer.android/reference/android/media/MediaPlayer.html, I suppose you could do something like this:

Button two = (Button)this.findViewById(R.id.button2); final MediaPlayer mp2 = MediaPlayer.create(this, R.raw.two); two.setOnClickListener(new OnClickListener(){ public void onClick(View v) { // If the music is playing if(mp2.isPlaying() == true) // Pause the music player mp2.pause(); // If it's not playing else // Resume the music player mp2.start(); } });

You can actually write just

if(mp2.isPlaying())

instead of

if(mp2.isPlaying() == true)

It's just for the sake of understanding what is going on.

更多推荐

Android按钮点击播放音乐,再次点击停止音乐

本文发布于:2023-07-11 09:34:38,感谢您对本站的认可!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:音乐   按钮   Android

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!