前几天有人向我要音乐播放器源代码 而自己因为系统问题而丢失了 所以决定重写一遍
为了与以前不同 所以今天打算不用ListView 而用RadioGroup 其实是换汤不换药而已
[代码 步骤]
1. 定制化有RadioGroup的界面:main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<Button
android:id="@+id/cmd"
android:layout_width="wrap_content"
android:layout_height="500dip"
android:text="Loading.."
/>
</LinearLayout>
<RadioGroup
android:id="@+id/rgroup"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
2. 初始化所有View
public void initialView(){
rGroup = (RadioGroup) findViewById(R.id.rgroup);
cmd = (Button) findViewById(R.id.cmd);
}
3. 检索MediaStore 得到sdcard所以音乐的Uri
Cursor c = getContentResolver().query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
null, null, null, null);
4. 把上面的音乐文件装入RadioButton
public void loadMusic(Cursor c){
int index = c.getColumnIndex(MediaStore.Audio.AudioColumns.TITLE);
int i=BASE_ID;
for(c.moveToFirst();!c.isAfterLast();c.moveToNext()){
String title = c.getString(index);
RadioButton rb = new RadioButton(this);
rb.setText(title);
rb.setId(i++);
rGroup.addView(rb);
}
}
5. 设立RadioGroup的选择监听器 并播放选中目标
rGroup.setOnCheckedChangeListener(new OnCheckedChangeListener(){
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
int id = group.getCheckedRadioButtonId()-BASE_ID+1;
try {
playMusic(id);
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
public void playMusic(long arg3) throws IllegalArgumentException, IllegalStateException, IOException{
Uri uri = Uri.withAppendedPath(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
String.valueOf(arg3));
mPlayer.release();
mPlayer = MediaPlayer.create(this, uri);
mPlayer.start();
}
5. emulator 运行截图:
分享到:
相关推荐
总结来说,开发一个"android音乐播放器测试歌曲"涉及到的关键知识点包括:Android音频框架(Media Player和AudioTrack)、媒体库的访问与管理、UI设计、后台服务、通知管理和性能优化。这些知识点构建了Android音乐...
### 使用C++开发简易音乐播放器的关键知识点 #### 一、设计目标 - **核心功能**:本项目旨在创建一个具备基本操作功能的媒体播放器,包括但不限于:播放、暂停、回退、循环播放以及音量调节等。 - **文件支持**:...
在Android平台上开发一款音乐播放器是一项常见的任务,也是学习Android应用开发的重要实践。这款名为"尹人动听"的音乐播放器源码提供了一个基础的框架,可以帮助开发者了解如何实现音乐播放、媒体库管理以及用户界面...
例如,在一个音乐播放器应用中,用户可以选择是否开启循环播放,这时可以使用CheckBox;而在选择播放模式(顺序、随机)时,RadioButton就更为合适。而当用户进行某项操作后,如添加歌曲到播放列表,可以通过Toast给...
通过以上介绍,我们了解了如何使用Python结合`requests`和`BeautifulSoup`库来实现一个简单的音乐播放器爬虫。需要注意的是,在实际开发过程中还需要考虑异常处理、编码问题、页面结构变化等因素。此外,尊重版权...
实验要求学生开发一个音乐播放器应用,利用后台服务实现播放、暂停和切换歌曲的功能。学生需掌握服务的隐式启动和显式启动,以及如何通过AIDL(Android Interface Definition Language)进行远程服务的绑定和调用。...
GUI界面是用户与应用程序交互的窗口,它的设计直接影响到用户的体验。在这个电子钢琴中,设计了以下几个主要组件: 1. **Entry组件**:用于输入曲名和速度。`Entry`组件允许用户输入文本,通过`textvariable`参数...
【综合应用】:通过组合上述组件和功能,你可以创建复杂的、功能齐全的应用,如数据库应用、图像编辑器、音乐播放器等。wxPython的灵活性和强大的功能使其成为开发桌面应用的有力工具。 学习这个压缩包中的官方demo...
3. 其他开源项目:许多开源软件和工具,如Songbird音乐播放器和SeaMonkey互联网套件,也采用XUL来构建其用户界面。 通过深入理解和掌握XUL,开发者可以创建出既美观又功能强大的跨平台应用程序,同时享受XML的结构...
10.4 音乐播放器 10.5 天气预报 10.6 个人地图 10.7 Widget日历 10.8 小结 第11 章Android游戏开发实例 11.1 手机游戏开发简介 11.2 游戏框架设计 11.3 地图设计 11.4 主角设计 11.5 图层管理器 11.6 游戏音效 11.7...
10.4 音乐播放器 10.5 天气预报 10.6 个人地图 10.7 Widget日历 10.8 小结 第11 章Android游戏开发实例 11.1 手机游戏开发简介 11.2 游戏框架设计 11.3 地图设计 11.4 主角设计 11.5 图层管理...
可以从简单的计数器、日历应用开始,逐步挑战更复杂的项目,如文件管理器、音乐播放器等。 9. **调试和优化**:在开发GUI应用过程中,学习如何调试代码、查找性能瓶颈以及优化用户体验,是提高编程能力的关键步骤。...
10.4 音乐播放器 10.5 天气预报 10.6 个人地图 10.7 Widget日历 10.8 小结 第11 章Android游戏开发实例 11.1 手机游戏开发简介 11.2 游戏框架设计 11.3 地图设计 11.4 主角设计 11.5 图层管理...
10.4 音乐播放器 10.5 天气预报 10.6 个人地图 10.7 Widget日历 10.8 小结 第11 章Android游戏开发实例 11.1 手机游戏开发简介 11.2 游戏框架设计 11.3 地图设计 11.4 主角设计 11.5 图层管理器 11.6 游戏音效 11.7 ...
Android提供MediaPlayer类来播放音频资源,开发者需要正确配置和控制播放器以确保音乐按时播放。 11. **后台运行**:为了确保闹钟在后台仍能正常工作,开发者可能利用Service或者JobScheduler等机制,即使应用被...
10.4 音乐播放器 10.5 天气预报 10.6 个人地图 10.7 Widget日历 10.8 小结 第11 章Android游戏开发实例 11.1 手机游戏开发简介 11.2 游戏框架设计 11.3 地图设计 11.4 主角设计 11.5 图层管理器 11.6 游戏音效 11.7...
- **音乐播放器**:结合音频处理库,如`pygame`或`vlc`,实现音乐播放、暂停、停止等功能,并展示歌曲信息。 3. **高级特性** - **自定义控件**:通过继承Tkinter的`Widget`类,可以创建具有特定行为和外观的...
开放手机联盟, Open Handset Alliance :是美国 Google 公司与 2007 年 11 月 5 日宣布组建的一个全球性的联 盟组织。这一联盟将会支持 Google 发布的 Android 手机操作系统或者应用软件,共同开发名为 Android 的 ...