<?xml version="1.0" encoding="utf-8"?> <!-- 定義當前佈局的基本LinearLayout --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <!-- 定義提示用戶播放mp3的顯示控件 --> <TextView android:id="@+id/Tv" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="點擊按鈕播放/sdcard/1.mp3文件" /> <!-- 定義用戶點擊播放聲音的按鈕控件 --> <Button android:id="@+id/Btn" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="播放聲音" /> </LinearLayout>
package com.example.yanlei.yl2; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class MainActivity extends AppCompatActivity { // 定義佈局中的播放聲音的Button控件 private Button btn; // 定義顯示標籤的控件 private TextView Tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //設置當前Activity的佈局文件爲activity_main setContentView(R.layout.activity_main); //獲得瀏覽器中的控件對象 findView(); //設置對象的監聽器 setListener(); } private void setListener() { // 設置btn的點擊監聽器 btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //定義intent對象,設置action屬性爲Intent.ACTION_VIEW Intent it = new Intent(Intent.ACTION_VIEW); //定義sdcard下的song.mp3文件的uri Uri uri = Uri.parse("file:///sdcard/1.mp3");//不是內存卡 //設置intent的數據類型爲audio/mp3,這樣就能夠啓動系統程序打開mp3文件了 it.setDataAndType(uri, "audio/mp3"); //經過intent打開activity startActivity(it); } }); } private void findView() { // 獲得佈局中的開始加載的Button的對象 btn = (Button) findViewById(R.id.Btn); // 獲得佈局中的開始加載的EditText的對象 Tv = (TextView) findViewById(R.id.Tv); } }