- 浏览: 433532 次
- 性别:
- 来自: 苏州
文章分类
最新评论
-
yehuiyan8002:
支持中文查询
快熟查找联系人 -
lehehe:
现成的接口,免费试用,http://www.haoservic ...
天气Widget -
D.Z:
android:focusable="false&q ...
CheckBox在ListView 而导致其OnItemClickListener不会被触发 -
freecode:
碰到该问题,CheckBox的android:focusabl ...
CheckBox在ListView 而导致其OnItemClickListener不会被触发 -
echohfut:
哥们,新博客是不是在墙外啊?不能访问。还有你怎么进行博客迁移的 ...
博客 迁移
带ListView的音乐播放器
[功能]
前篇写的是:通过文件名来播放视频 今天说的是:通过MediaStore 来得到目标的Uri 在把之传入MediaPlay 然后再播放
所以 会有2个重点:
* 列出emulator 的所有音乐文件
* 音乐播放器
[代码 步骤]
1. 构建界面:main.xml
写道
1 Button 用于音乐播放控制(暂停/继续)
1 TextView 用于显示目标Uri
1 ListView 用于列出所有音乐文件
1 TextView 用于显示目标Uri
1 ListView 用于列出所有音乐文件
<?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="wrap_content" android:text="Prepare" /> <TextView android:id="@+id/name" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="NAME" /> </LinearLayout> <ListView android:id="@+id/list" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
2. 列出所有音乐文件 并转入 adapter
Cursor c = getContentResolver().query( MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, null); String[] from = {MediaStore.Audio.AudioColumns.TITLE, MediaStore.Audio.AudioColumns.ARTIST}; int[] to = {android.R.id.text1,android.R.id.text2}; final CursorAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_2,c, from, to);
3. 使用之
list.setAdapter(adapter);
4. 与音乐播放有关的功能
//1. 定义 MediaPlayer mp; //2. 初始化 mp = new MediaPlayer(); //3. 暂停 mp.pause(); //4. 继续 mp.start(); //5. 判断是否正在播放 mp.isPlaying() //6.使用目标Uri mp.release(); mp = MediaPlayer.create(this, uri);
5. 单击ListView中某个Item 会播放目标音乐资源
public void playMusic(long arg3) throws IllegalArgumentException, IllegalStateException, IOException{ Uri uri = Uri.withAppendedPath( MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, String.valueOf(arg3)); TextView tv = (TextView) findViewById(R.id.name); tv.setText(uri.toString()); mp.release(); mp = MediaPlayer.create(this, uri); mp.start(); } list.setOnItemClickListener(new OnItemClickListener(){ @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub try { playMusic(arg3); } 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(); } } });
因为这是个音乐播放器 界面也没什么特别之处 就此略过 只有一个关于所有音乐文件的ListView
done!
评论
6 楼
mzba520
2011-01-11
楼主请问
Cursor c = getContentResolver().query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
null, null, null, null);
如何获取指定文件夹的歌曲信息,而不是整个sd卡的。
Cursor c = getContentResolver().query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
null, null, null, null);
如何获取指定文件夹的歌曲信息,而不是整个sd卡的。
5 楼
热血pk007
2010-09-06
楼主可以把这源代码放上来提供下载吗?好学习学习
4 楼
gryphone
2010-01-30
hongbiangoal 写道
gryphone 写道
BarryWei 写道
模拟一个String数组,换成ArrayAdapter试试看,好像有问题。
以前我写了一个,就没写出来…… 后来给淡忘了……
以前我写了一个,就没写出来…… 后来给淡忘了……
我不清楚你是怎么使用的 我这边还好
我这里就有它的使用情况, 题目:Adapter:SimpleAdapter SimpleCursorAdapter ArrayAdapter
而且有例子下载 你可以下载看看 和你比较一下 或者把你写的贴一下 我好看看是哪里问题
5644646454
什么意思?
3 楼
hongbiangoal
2010-01-29
gryphone 写道
BarryWei 写道
模拟一个String数组,换成ArrayAdapter试试看,好像有问题。
以前我写了一个,就没写出来…… 后来给淡忘了……
以前我写了一个,就没写出来…… 后来给淡忘了……
我不清楚你是怎么使用的 我这边还好
我这里就有它的使用情况, 题目:Adapter:SimpleAdapter SimpleCursorAdapter ArrayAdapter
而且有例子下载 你可以下载看看 和你比较一下 或者把你写的贴一下 我好看看是哪里问题
5644646454
2 楼
gryphone
2010-01-25
BarryWei 写道
模拟一个String数组,换成ArrayAdapter试试看,好像有问题。
以前我写了一个,就没写出来…… 后来给淡忘了……
以前我写了一个,就没写出来…… 后来给淡忘了……
我不清楚你是怎么使用的 我这边还好
我这里就有它的使用情况, 题目:Adapter:SimpleAdapter SimpleCursorAdapter ArrayAdapter
而且有例子下载 你可以下载看看 和你比较一下 或者把你写的贴一下 我好看看是哪里问题
1 楼
BarryWei
2010-01-25
模拟一个String数组,换成ArrayAdapter试试看,好像有问题。
以前我写了一个,就没写出来…… 后来给淡忘了……
以前我写了一个,就没写出来…… 后来给淡忘了……
发表评论
-
滑动抽屉 另一种解决办法
2010-07-09 17:43 0滑动抽屉 -
Spinner 定制化 增强版
2010-07-09 14:34 2608Spinner 作为下拉选 ... -
ListView 内容之分批显示
2010-06-25 20:38 5923ListView 内容循环显示 大家试想 假如 ... -
MediaScanner 研究
2010-06-23 15:21 3169MediaScanner 之所以拿MediaSc ... -
CheckBox在ListView 而导致其OnItemClickListener不会被触发
2010-06-22 20:55 19013CheckBox在ListView 而导致其OnItemCli ... -
获取Launcher 启动列表
2010-06-22 10:09 3138获取Launcher 启动列表 即 列出所有Launc ... -
PreferenceActivity 全接触
2010-06-19 12:53 9439PreferenceActivity 为了引入 ... -
android src 下载 编译 安装 全接触
2010-06-12 14:44 0android src - download install ... -
Intent.createChooser() 妙用
2010-06-12 11:14 5955Intent.createChooser(ntent targ ... -
SMS管理:收信箱 发信息 编写新信息
2010-06-07 08:14 14443SMS管理 [功能] 1. 收信箱:显示 ... -
求 android 手机 帮忙测试sms服务系统 谢谢
2010-06-05 08:25 1451Hi guys, 最近一段时间没有更新blog 因为一 ... -
流媒体 播放 理论篇
2010-05-28 14:42 2222流媒体播放 之所以为理论篇 因为该篇仅实现了播放功能 ... -
NDK 搭建与HelloWorld
2010-05-19 09:48 3224NDK [前提] 1. Cygwin 用于安装 ... -
自定义字体
2010-05-15 10:49 1221自定义字体: []代码 步骤] 1 ... -
模糊查找 再深入
2010-05-15 09:41 3158模糊查找 再深入 应某位大哥要求 再次对 SQLite ... -
快捷方式Bar + ViewGroup - 自定义
2010-05-09 09:20 2470TabActivity - 自定义 其实 这篇感觉极鸡 ... -
View 拖动&插入 研究
2010-05-09 07:14 3983View 拖动&插入 即: ... -
带图标 快捷键 Menu - 终极版
2010-05-04 20:23 1837Menu 改头换面 扩展如下: 1. 图标化文字 2 ... -
*.gif 解码 - 实践
2010-05-02 18:58 1734*.gif decode 前面已经说过 今天不打算再说了 ... -
*.gif 解码 - 理论
2010-05-01 21:11 1522我们知道Android 默认是不支持*.gif 的 但是 ...
相关推荐
### ListView音乐播放器知识点详解 #### 一、项目概述与目标 本教程旨在手把手指导开发者如何构建一个基于`ListView`的简易音乐播放器。通过本教程的学习,开发者能够掌握以下核心技能: - 如何在Android应用中添加...
【本地音乐播放器Demo】是一款实现本地音乐播放功能的应用示例。它主要展示了如何在Android平台上,通过工作线程高效地遍历外部存储设备(如SD卡),查找并读取mp3音频文件的相关信息,然后将这些信息动态加载到...
Android 自带音乐播放器是Android操作系统内置的一款音乐应用程序,它为用户提供了一个方便的平台来管理和播放他们的音乐收藏。这款播放器支持多种音频格式,并具备基本的播放控制功能,如播放、暂停、上一曲、下...
在Android平台上,开发一款音乐播放器是常见的任务之一,它涉及到多媒体处理、用户界面设计以及服务组件等多个核心知识点。这份“安卓音乐播放器相关-原生Android4.4音乐播放器源码原封未动原滋原味的代码学习最基本...
在Android平台上,开发一个简易本地音乐播放器是一项常见的任务,对于初学者来说是学习Android音频处理和用户界面设计的良好实践。这个"Android简易本地音乐播放器源码"提供了实现这样一个功能的基本框架。以下是对...
【Android实现音乐播放器——课程设计报告,优秀课设】是一个关于移动应用开发的课程设计项目,主要目标是让学生熟练掌握Android程序开发的各种技术,包括基础的UI界面设计、数据存储、Activity、Service、SQLite...
在Android平台上开发一款音乐播放器应用是一个常见的任务,它涉及到许多关键技术和组件的理解与应用。以下将详细解析“android音乐播放器demo”所涵盖的知识点。 首先,Android音乐播放器的核心是媒体播放服务...
【基于Eclipse的Android音乐播放器】 在移动设备上开发应用程序是现代软件工程的重要组成部分,尤其是在Android平台上。Eclipse作为一款流行的集成开发环境(IDE),曾经是Android开发者的首选工具。本项目“基于...
在安卓平台上,开发一款音乐播放器应用是一项技术性较强的任务,涉及到多媒体处理、用户界面设计、数据管理等多个方面的知识。本资源"安卓remusic仿网易音乐播放器源代码"提供了一个很好的学习样本,帮助开发者了解...
【Android 音乐播放器开发详解】 在移动设备上,音乐播放器是用户日常使用的重要应用之一。本项目“安卓大作业之音乐播放器”旨在通过整合网络上的部分源码,构建一个基础但功能完善的音乐播放器。在这个过程中,...
上次我们实现了把手机里的音频扫描到,然后放在list集合里面,用ListView展示在手机界面上,如果没有看过的可以去看看本人的博客:Android音乐播放器制作(一)扫描本地音乐显示在手机上 这次是在上一次的基础上直接...
在Android平台上,开发一款音乐播放器是一个常见的任务,也是一个学习Android应用开发的好起点。本项目提供的"andriod音乐播放器(源代码)"是一个简易的实现,它可以帮助开发者了解如何在Android环境中创建一个功能...
总结来说,创建一个Android Studio音乐播放器项目涉及了Android开发中的多个关键知识点,包括`MediaPlayer`的使用、UI设计、Service的绑定与通信、ListView的实现、SeekBar的控制以及网络下载管理。通过实践这些功能...
本文将深入探讨如何使用Android SDK中的Mediaplayer类和Listview组件来构建一个基本的音乐播放器应用。 首先,我们要了解Mediaplayer类在Android中的角色。Mediaplayer是Android系统提供的一个核心类,用于处理音频...
综合运用UI界面设计、数据存储、Activity(活动)、Service(服务)、MusicPlayer、ListView等知识,设计开发一款具有音乐列表的音乐播放器。 详细介绍博客:...
在Android平台上开发一款音乐播放器是一项综合性的任务,涉及到多媒体处理、用户界面设计以及系统服务的利用等多个方面。本文将详细解析"android实现的音乐播放器"这一项目,包括其核心功能实现、特色功能——刷字幕...
在设计“漂亮的音乐播放器”时,我们可以利用WinForm中的Form控件来创建主窗口,Button控件来实现播放、暂停、上一曲、下一曲等操作,Label控件展示歌曲信息,ListView或ListBox控件用于显示歌曲列表,而PictureBox...
【音乐播放器开发】 在移动设备上开发音乐播放器是一项涉及多方面技术的任务,主要目标是为用户提供便捷的音乐播放体验。以下是一份详细的音乐播放器开发报告,涵盖了该领域的核心知识点。 首先,音乐播放器的基本...
本项目"Android音乐播放器源码"提供了一个完整的实现,包含了本地音乐播放、ListView列表展示、Service服务以及BroadcastReceiver广播接收器等关键功能。下面将详细介绍这些知识点。 1. **本地音乐播放**: ...