亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1223 | 回復(fù): 0
打印 上一主題 下一主題

[Android] Android——簡(jiǎn)單音樂播放器 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2015-05-28 11:18 |只看該作者 |倒序?yàn)g覽
使用MediaPlayer做的簡(jiǎn)單音樂播放器
  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  2.     xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
  3.     android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
  4.     android:paddingRight="@dimen/activity_horizontal_margin"
  5.     android:paddingTop="@dimen/activity_vertical_margin"
  6.     android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
  7.     android:id="@+id/relativeLayout">

  8.     <TextView android:text="音頻播放器" android:layout_width="match_parent"
  9.         android:layout_height="wrap_content"
  10.         android:id="@+id/textView" />

  11.     <LinearLayout
  12.         android:orientation="horizontal"
  13.         android:layout_width="fill_parent"
  14.         android:layout_height="fill_parent"
  15.         android:layout_below="@+id/textView"
  16.         android:layout_alignParentLeft="true"
  17.         android:layout_alignParentStart="true">

  18.         <Button
  19.             android:layout_width="wrap_content"
  20.             android:layout_height="wrap_content"
  21.             android:text="播放"
  22.             android:id="@+id/button"
  23.             android:layout_weight="0.33" />

  24.         <Button
  25.             android:layout_width="wrap_content"
  26.             android:layout_height="wrap_content"
  27.             android:text="停止"
  28.             android:id="@+id/button2"
  29.             android:layout_weight="0.33" />

  30.         <Button
  31.             android:layout_width="wrap_content"
  32.             android:layout_height="wrap_content"
  33.             android:text="暫停"
  34.             android:id="@+id/button3"
  35.             android:layout_weight="0.33" />
  36.     </LinearLayout>

  37. </RelativeLayout>
復(fù)制代碼
  1. package com.basillee.asus.demo;
  2.   
  3. import android.app.Activity;
  4. import android.media.MediaPlayer;
  5. import android.os.Bundle;
  6. import android.os.Environment;
  7. import android.util.Log;
  8. import android.view.View;
  9. import android.widget.Button;
  10. import android.widget.TextView;
  11. import android.widget.Toast;
  12.   
  13. import java.io.File;
  14.   
  15.   
  16. public class MainActivity extends Activity {
  17.   
  18.     private MediaPlayer mediaPlayer;//MediaPlayer對(duì)象
  19.     private boolean isPause=false;//是否暫停
  20.     private File file;//要播放的文件
  21.     private TextView hint;//聲明提示信息的文本框
  22.   
  23.     @Override
  24.     protected void onCreate(Bundle savedInstanceState) {
  25.         super.onCreate(savedInstanceState);
  26.         setContentView(R.layout.activity_main);
  27.         //獲取各功能按鈕
  28.         final Button button=(Button)findViewById(R.id.button);//播放
  29.         final Button button1=(Button)findViewById(R.id.button2);//暫停
  30.         final Button button2=(Button)findViewById(R.id.button3);//停止
  31.   
  32.         hint=(TextView)findViewById(R.id.textView);
  33.         if(!isFileExist()){
  34.             button.setEnabled(false);
  35.         }
  36.         //對(duì)MediaPlayer對(duì)象添加事件監(jiān)聽,當(dāng)播放完成時(shí)重新開始音樂播放
  37.         mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
  38.             @Override
  39.             public void onCompletion(MediaPlayer mp) {
  40.                 play();
  41.             }
  42.         });
  43.   
  44.         //對(duì)播放按鈕進(jìn)行事件監(jiān)聽
  45.         button.setOnClickListener(new View.OnClickListener() {
  46.             @Override
  47.             public void onClick(View v) {
  48.                 play();
  49.                 if(isPause){
  50.                     button1.setText("暫停");
  51.                     isPause=false;
  52.                 }
  53.                 button1.setEnabled(true);
  54.                 button2.setEnabled(true);
  55.                 button.setEnabled(false);
  56.             }
  57.         });
  58.   
  59.         //對(duì)暫停、繼續(xù)按鈕添加事件監(jiān)聽器
  60.         button1.setOnClickListener(new View.OnClickListener() {
  61.             @Override
  62.             public void onClick(View v) {
  63.                 if(mediaPlayer.isPlaying()&&!isPause){
  64.                     mediaPlayer.pause();
  65.                     isPause=true;
  66.                     ((Button)v).setText("繼續(xù)");
  67.                     hint.setText("暫停播放音頻....");
  68.                     button.setEnabled(true);
  69.                 }else{
  70.                     mediaPlayer.start();
  71.                     ((Button)v).setText("暫停");
  72.                     hint.setText("繼續(xù)播放音頻....");
  73.                     button.setEnabled(false);
  74.                 }
  75.             }
  76.         });
  77.   
  78.         //對(duì)停止按鈕添加事件監(jiān)聽器
  79.         button2.setOnClickListener(new View.OnClickListener() {
  80.             @Override
  81.             public void onClick(View v) {
  82.                 mediaPlayer.stop();
  83.                 hint.setText("停止播放音頻...");
  84.                 button1.setEnabled(false);
  85.                 button2.setEnabled(false);
  86.                 button.setEnabled(true);
  87.             }
  88.         });
  89.     }
  90.   
  91.     @Override
  92.     protected void onDestroy() {
  93.         if(mediaPlayer.isPlaying()){
  94.             mediaPlayer.stop();
  95.         }
  96.         mediaPlayer.release();
  97.         super.onDestroy();
  98.     }
  99.   
  100.     //判斷文件是否存在
  101.     private boolean  isFileExist(){
  102.         file=new File(Environment.getExternalStorageDirectory()+File.separator+"myMP32.mp3");
  103.         if(file.exists()){
  104.           //  mediaPlayer=new MediaPlayer();
  105.             mediaPlayer=MediaPlayer.create(this,R.raw.my);
  106.             try {
  107.   
  108. //                mediaPlayer.setDataSource(file.getAbsolutePath());
  109. //                mediaPlayer.prepare();//預(yù)加載音頻
  110. //                mediaPlayer.start();//播放音樂
  111.             }catch (Exception e) {
  112.                 e.printStackTrace();
  113.             }
  114.             Toast.makeText(this,"file exist",Toast.LENGTH_LONG).show();
  115.             return true;
  116.         }else{
  117.             Toast.makeText(this,"file don't exist",Toast.LENGTH_LONG).show();
  118.         }
  119.         return false;
  120.     }
  121.   
  122.     //播放音樂的方法
  123.     private void play(){
  124.         try{
  125.             mediaPlayer.reset();//從新設(shè)置要播放的音樂
  126. //           mediaPlayer.setDataSource(file.getAbsolutePath());
  127. //            mediaPlayer.prepare();//預(yù)加載音頻
  128.             mediaPlayer=MediaPlayer.create(this,R.raw.my);
  129.             mediaPlayer.start();//播放音樂
  130.             hint.setText("Music is starting");
  131.         } catch (Exception e) {
  132.             e.printStackTrace();
  133.             Log.e("err",e.getMessage());
  134.         }
  135.         return ;
  136.     }
  137. }
復(fù)制代碼
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP