mp8播放器 android 1.4,listview(自定义适配器)与媒体播放器android
嘿家伙我在listview(自定义适配器)面临问题 . 我已经实现了播放音频(mp3文件)的媒体播放器的listview . 我已经在我的原始文件夹中包含了mp3文件 . 我知道这是一个循环视图 . 我的问题是在6-7行之后,相同的mp3文件与第0个位置的文件相同 . 任何解决方案?我的主要活动公共类MainActivity扩展了Activity实现OnItemClickListener {
ListView lview3;
ListViewCustomAdapter adapter;
private ArrayList itemList;
private ItemBean bean;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
prepareArrayLits();
lview3 = (ListView) findViewById(R.id.listView1);
adapter = new ListViewCustomAdapter(this, itemList);
lview3.setAdapter(adapter);
lview3.setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView> arg0, View arg1, int position1, long id) {
// TODO Auto-generated method stub
ItemBean bean = (ItemBean) adapter.getItem(position1);
Toast.makeText(this, "Title => "+bean.getTitle()+" \n Description => "+bean.getDescription(), Toast.LENGTH_SHORT).show();
}
/* Method used to prepare the ArrayList,
* Same way, you can also do looping and adding object into the ArrayList.
*/
public void prepareArrayLits()
{
itemList = new ArrayList();
AddObjectToList(R.drawable.ic_add, "Add", "Add desc",R.raw.mp1);
AddObjectToList(R.drawable.ic_delete, "Delete", "Delete desc",R.raw.mp2);
AddObjectToList(R.drawable.ic_down, "Down", "Down desc",R.raw.mp3);
AddObjectToList(R.drawable.ic_info, "Information", "Information desc",R.raw.mp4);
AddObjectToList(R.drawable.ic_help, "Help", "Help desc",R.raw.mp5);
AddObjectToList(R.drawable.ic_download, "Download", "Download desc",R.raw.mp6);
AddObjectToList(R.drawable.ic_mail, "Mail", "Mail desc",R.raw.mp7);
AddObjectToList(R.drawable.ic_search, "Search", "Search desc",R.raw.mp8);
AddObjectToList(R.drawable.ic_settings, "Settings", "Settings desc",R.raw.mp9);
}
// Add one item into the Array List
public void AddObjectToList(int image, String title, String desc,int audio)
{
bean = new ItemBean();
bean.setDescription(desc);
bean.setImage(image);
bean.setTitle(title);
bean.setAudio(audio);
itemList.add(bean);
}
}
我的listviewCustomadapter
public class ListViewCustomAdapter extends ArrayAdapter {
MediaPlayer mPlayer;
Context c;
ArrayList itemList;
public Activity context;
public LayoutInflater inflater;
public ListViewCustomAdapter(Activity context, ArrayList itemList) {
super(context, R.layout.main);
this.context = context;
this.itemList = itemList;
this.c = context;
this.inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return itemList.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return itemList.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
public static class ViewHolder {
ImageView imgViewLogo;
TextView txtViewTitle;
TextView txtViewDescription;
Button btn1, btn2;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
convertView = inflater.inflate(R.layout.items, null);
holder.imgViewLogo = (ImageView) convertView.findViewById(R.id.imgViewLogo);
holder.btn1 = (Button) convertView.findViewById(R.id.button);
holder.btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (position == 0) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp1);
mPlayer.start();
}
if (position == 1) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp2);
mPlayer.start();
}
if (position == 2) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp3);
mPlayer.start();
}
if (position == 3) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp4);
mPlayer.start();
}
if (position == 4) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp5);
mPlayer.start();
}
if (position == 5) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp6);
mPlayer.start();
}
if (position == 6) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp7);
mPlayer.start();
}
if (position == 7) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp8);
mPlayer.start();
}
if (position == 8) {
mPlayer = MediaPlayer.create(getContext(), R.raw.mp9);
mPlayer.start();
}
}
});
holder.btn2 = (Button) convertView.findViewById(R.id.button2);
holder.txtViewTitle = (TextView) convertView.findViewById(R.id.txtViewTitle);
holder.txtViewDescription = (TextView) convertView.findViewById(R.id.txtViewDescription);
convertView.setTag(holder);
} else
holder = (ViewHolder) convertView.getTag();
ItemBean bean = (ItemBean) itemList.get(position);
holder.imgViewLogo.setImageResource(bean.getImage());
holder.txtViewTitle.setText(bean.getTitle());
holder.txtViewDescription.setText(bean.getDescription());
return convertView;
}
}
mp8播放器 android 1.4,listview(自定义适配器)与媒体播放器android相关推荐
- android 中自定义安装,Android开发中ListView自定义adapter的封装
[引入] 我们一般编写listView的时候顺序是这样的: •需要展示的数据集List •为这个数据集编写一个ListView •为这个ListView编写一个Adapter,一般继承自BaseAda ...
- android fragment中引入自定义view_厉害了,用Android自定义View实现八大行星绕太阳3D旋转效果...
作者:史蒂芬诺夫斯基 链接:https://www.jianshu.com/p/2954f2ef8ea5 好久没写View了,最近恰巧遇到一个八大行星绕太阳旋转的假3D效果,写完之后感觉效果还不错.能 ...
- 带有自定义适配器示例教程的Android ListView
In this tutorial we'll use a CustomAdapter that populates the custom rows of the Android ListView wi ...
- upnp 播放器 android,基于Android系统的UPNP媒体播放器的研究与实现
摘要: 近几年来,"数字家庭网络"的发展备受人们的关注,如何通过有线或无线的方式将多个网络设备及家庭设备互联互通,最终实现设备之间自动发现.智能互联.相互控制.资源共享等操作,是目 ...
- android播放器1004,Android媒体播放器在从外部网站播放流时出错(1,-1004)
我试图从我的 Android应用程序中的网站播放音频文件,但它遇到媒体播放器错误(1,-1004). 当我在Windows媒体播放器或vlc播放器中使用它时,流链接工作正常.为什么Android媒体播 ...
- 30个最佳和免费的Android媒体播放器
今天发布的内容有所不同,我们为您介绍了Google Play App Store提供的The Best Android Media Player . 1. MusiXmatch歌词播放器 狂热的音乐爱 ...
- MediaPlayer( 媒体播放器),TelephonyManager(电话管理类),MediaRecorder(媒体录音机)
媒体播放器 MediaPlayer 媒体播放器类可用于控制回放的音频/视频文件和流. 方法: setDataSource(String path);// 设置数据源(文件路径或http / rtsp ...
- 教程:媒体播放器SKIN制作全攻略[原创]
因为不太知道怎样的教程比较合用,所以我想把这个教程做成互动式的,一部分一部分地放上来,大家可以对这篇文档提出自己的建议和要求,我根据大家的需求来改,目前拟定的目录如下: 微软媒体播放器SKIN制作教程 ...
- android自定义控件是一个 内部类 如何在xml中引用,android 自定义view属性
android 自定义view属性 一个完美的自定义控件也可以添加xml来配置属性和风格.要实现这一点,可按照下列步骤来做: 1) 添加自定义属性到xml文件中 2) 在xml的中,指定属性的值 3) ...
最新文章
- Ubuntu的apt-get使用国内的源
- 2019秋第三周学习总结
- Linux中的管道与重定向
- slice 和 splice 区别
- 理想汽车交付失误 油门踩到底速度最高30迈,李想:是我们太蠢了
- 21.Shiro在springboot与vue前后端分离项目里的session管理
- 【优化算法】孪生支持向量机(TWSVM)【含Matlab源码 1257期】
- Java后端开发笔试题
- 股票开户天载钢铁等板块跌幅居前
- 地球上20张最惊人照片!不看将后悔一辈子
- 移动用户免费领取15G流量(秒到)
- 新手小白怎么学抖音运营?抖音运营5大技巧
- Spring Boot 启动卡住了
- 链表及经典问题(船长系列)
- (四)激活函数与loss梯度
- 经典的期货量化交易策略大全(含源代码)
- java处理器,JAVA注解处理器
- ECMAScript(pink)
- element的formatter失效的解决方案
- 前端(Jinja2)