一、知识点
线性布局
按钮
数组资源
颜色资源
音频资源(播放)
二、创建安卓应用
三、初始化
四、准备背景图片,拷贝到drawable目录里
五、将音频资源拷贝到自建的raw目录
六、主布局资源文件activity_photo.xml
<Button
android:id="@+id/btnMusic"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:onClick="doMusic"
android:text="@string/music"
android:textColor="#03A9F4"
android:textSize="20sp" />
七、字符串资源文件strings.xml ![在这里插入图片描述](https://www.icode9.com/i/ll/?i=20210114192303377.png) 图片 播放音乐 八、主界面类 ![在这里插入图片描述](https://www.icode9.com/i/ll/?i=2021011419244142.png) package net.gzm.shoushi;
import androidx.appcompat.app.AppCompatActivity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.Toast;
public class Photo extends AppCompatActivity {
private LinearLayout root; // 根线性布局
private int pictureClickCount;
private MediaPlayer mp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//利用布局资源文件设置用户界面
setContentView(R.layout.activity_photo);
//通过资源标识符获取控件实例
root = findViewById(R.id.root);
}
/**
* 改变背景图片按钮单击事件处理方法
*
* @param view
*/
public void doPhoto(View view) {
//访问字符串资源
int[] bgPics = new int[7];
for (int i=0;i<bgPics.length;i++){
bgPics[i] =getResources().getIdentifier(“img”+(i+1),
“drawable”,“net.tp.shoushi”);
}
//获取图片索引
int index =++pictureClickCount % bgPics.length;
//设置屏幕背景图片
root.setBackgroundResource(bgPics[index]);
}
/**
* 播放音乐按钮单击事件处理办法
* @param view
*/
public void doMusic(View view){
if(mp==null){
//创建媒体播放器,指定播放源
mp=MediaPlayer.create(Photo.this,R.raw.ale);
//设置循环播放方式
mp.setLooping(true);
//播放指定音频文件
mp.start();
//设置完成监听器
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
Toast.makeText(Photo.this,"音乐播放完毕!",
Toast.LENGTH_LONG).show();
}
});
}
}
}
九、运行效果