Android 超简单音乐播放器(三)根据歌曲名或者歌手搜索本地音乐(EditText监听)
2017-11-13 20:30
483 查看
在MusicUtil中添加一个SearchSong的方法
public List<Song> SearchSong(String name) { List<Song> list2 = new ArrayList<>(); for (Song song : list) { if (song.getSong().toString().contains(name) || song.getSinger().toString().contains(name)) { list2.add(song); } } return list2; }
因为我们已经在List中保存了我们的歌曲数据
所以我们只要一个个遍历 找到歌曲或者歌手名符合我们传入的String就可以啦
然后符合的就添加到list2中
最后将其返回
除此之外我们还要在MusicAdapter中添加一个setList方法 去改变适配器中的List
当然记得通知其数据集合已经变化
一定要调用notifyDataSetChanged();这个方法!!否则我们在界面中时看不出的
public void setList (List<Song> list){ this.list = list; notifyDataSetChanged(); }
去给EditText设置监听
在文本改变后我们让适配器中的数据集合变成我们的List2就可以了etFindlocal.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { } @Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { } @Override public void afterTextChanged(Editable editable) { musicAdapter.setList(MusicUtil.getInstance().SearchSong(etFindlocal.getText().toString())); } });
相关文章推荐
- Android 超简单音乐播放器(二)添加本地音乐 (RecyclerView)(Cursor)
- Android实现搜索,EditText+ListView(超简单)
- Android 超简单音乐播放器(九)搜索网络歌曲,获得热门榜单(GridView)(易源api的使用)(JSON的解析)(刷新)
- Android开发本地及网络Mp3音乐播放器(十三)网络音乐搜索功能实现,歌名歌手专辑名搜索
- Android开发本地及网络Mp3音乐播放器(十三)网络音乐搜索功能实现,歌名歌手专辑名搜索
- Android 超简单音乐播放器(六)播放暂停音乐,更换播放模式,上下歌曲切换(service)
- 【Android基础】EditText键盘搜索事件设置和监听
- EditText 自动搜索本地数据库(大数据量)卡顿解决方案
- Android 实现自定义自带删除按钮的EditText(带有搜索接口)
- Android限定EditText的输入类型为数字或者英文(包括大小写)
- android Fragment获取EditText 从软键盘中输入下一个action的监听
- Android自定义EditText:你需要一款简单实用的SuperEditText(一键删除&自定义样式)
- Android 监听EditText的输入状态
- Android自定义搜索框(EditText)的搜索功能实现,过滤ListView
- Android EditText的输入监听,输入字符的动态获取
- android搜索本地媒体库中的音乐文件
- Android中监听EditText文本输入
- Android中监听EditText文本输入
- Android开发教程:监听EditText的变化
- Android中监听EditText文本输入