您的位置:首页 > 移动开发 > Android开发

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()));
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐