Android studio音乐播放器源代码及界面代码
时间: 2023-09-19 09:10:56 浏览: 126
由于音乐播放器的代码较为复杂,无法在这里完整地展示,我可以提供一个简单的音乐播放器的代码示例供参考。
1. 首先,在布局文件中添加音乐播放器的UI界面代码。
```xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- 音乐封面 -->
<ImageView
android:id="@+id/cover"
android:layout_width="match_parent"
android:layout_height="400dp"
android:scaleType="centerCrop"
android:src="@drawable/cover" />
<!-- 歌曲名称 -->
<TextView
android:id="@+id/song_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="歌曲名称"
android:textSize="24sp"
android:textColor="#ffffff"
android:layout_below="@id/cover"
android:layout_centerHorizontal="true" />
<!-- 歌手名称 -->
<TextView
android:id="@+id/artist_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="歌手名称"
android:textSize="18sp"
android:textColor="#ffffff"
android:layout_below="@id/song_name"
android:layout_centerHorizontal="true" />
<!-- 播放/暂停按钮 -->
<ImageButton
android:id="@+id/play_pause_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/artist_name"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:background="@null"
android:src="@drawable/ic_play" />
<!-- 进度条 -->
<SeekBar
android:id="@+id/seek_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/play_pause_button"
android:layout_marginTop="20dp"
android:thumbTint="#ffffff"
android:progressTint="#ffffff"
android:backgroundTint="#ffffff"
android:paddingLeft="20dp"
android:paddingRight="20dp" />
</RelativeLayout>
```
2. 然后,在Java类中实现音乐播放器的逻辑。这里我们使用MediaPlayer类来播放音乐。
```java
public class MusicPlayerActivity extends AppCompatActivity implements View.OnClickListener {
private ImageButton mPlayPauseButton;
private SeekBar mSeekBar;
private MediaPlayer mMediaPlayer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_music_player);
// 初始化UI控件
mPlayPauseButton = findViewById(R.id.play_pause_button);
mSeekBar = findViewById(R.id.seek_bar);
// 设置点击事件监听器
mPlayPauseButton.setOnClickListener(this);
// 创建MediaPlayer对象
mMediaPlayer = MediaPlayer.create(this, R.raw.music);
// 设置进度条的最大值
mSeekBar.setMax(mMediaPlayer.getDuration());
// 设置进度条的改变事件监听器
mSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if (fromUser) {
mMediaPlayer.seekTo(progress);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
}
@Override
public void onClick(View v) {
if (v.getId() == R.id.play_pause_button) {
if (mMediaPlayer.isPlaying()) {
mMediaPlayer.pause();
mPlayPauseButton.setImageResource(R.drawable.ic_play);
} else {
mMediaPlayer.start();
mPlayPauseButton.setImageResource(R.drawable.ic_pause);
}
}
}
@Override
protected void onDestroy() {
super.onDestroy();
// 释放MediaPlayer对象
mMediaPlayer.release();
}
}
```
以上就是一个简单的音乐播放器的代码示例。当然,这只是一个最基本的实现,实际的音乐播放器还需要处理很多细节问题,例如如何处理不同音频格式的文件、如何实现后台播放、如何处理音频焦点等等。
阅读全文