Java Android在循环后将所有对象添加到列表
我尝试在完成循环后将所有对象添加到列表中。 下面是我想添加的适配器中的方法Java Android在循环后将所有对象添加到列表,java,android,retrofit2,Java,Android,Retrofit2,我尝试在完成循环后将所有对象添加到列表中。 下面是我想添加的适配器中的方法 public MusicCustomAdapter(Context context) { songList = new ArrayList<>(); this.context = context; } public void addMoreItem(List<SongRespones.Songs> songList) {
public MusicCustomAdapter(Context context) {
songList = new ArrayList<>();
this.context = context;
}
public void addMoreItem(List<SongRespones.Songs> songList) {
this.songList = songList;
notifyDataSetChanged();
}
public MusicCustomAdapter(上下文){
songList=newarraylist();
this.context=上下文;
}
公共无效addMoreItem(列表歌曲列表){
this.songList=歌曲列表;
notifyDataSetChanged();
}
这是我使用改装的呼叫响应:
private void getAllSongBySinger() {
songService = ServiceGenerator.createService(SongService.class);
Call<SongRespones> callAllSong = songService.findAllSongBySinger();
callAllSong.enqueue(new Callback<SongRespones>() {
@Override
public void onResponse(Call<SongRespones> call, Response<SongRespones> response) {
List<SongRespones.Songs> listSong;
SongRespones songRespones = response.body();
listSong = songRespones.getSongs();
for (SongRespones.Songs songs : listSong) {
if (songs.getSinger().getId() == getSingerId) {
Log.e(LOG, songs + "");
adapter.addMoreItem(What must I input in here?);
recyclerView.setAdapter(adapter);
}
}
}
@Override
public void onFailure(Call<SongRespones> call, Throwable t) {
t.printStackTrace();
}
});
}
private void getAllSongBySinger(){
songService=ServiceGenerator.createService(songService.class);
调用callAllSong=songService.findAllSongBySinger();
callAllSong.enqueue(新的回调(){
@凌驾
公共void onResponse(调用、响应){
列表歌曲;
SongRespones SongRespones=response.body();
listSong=songRespones.getSongs();
用于(SongRespones.Songs:listSong){
if(songs.getSinger().getId()==getSingerId){
Log.e(Log,songs+);
addMoreItem(我必须在这里输入什么?);
recyclerView.setAdapter(适配器);
}
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
t、 printStackTrace();
}
});
}
请帮助我:我想你只想播放选定歌手的歌曲。因此,基本上在您的
onResponse
方法中,创建新列表并添加您想要显示的歌曲,最后使用此列表更新适配器
SongRespones songRespones = response.body();
List<SongRespones.Songs> listSong = songRespones.getSongs();
List<SongRespones.Songs> selectedSingersSongs = new Arraylist();
for (SongRespones.Songs songs : listSong) {
if (songs.getSinger().getId() == getSingerId) {
Log.e(LOG, songs + "");
selectedSingersSongs.add(songs);
}
}
adapter.addMoreItem(selectedSingersSongs);
SongRespones-SongRespones=response.body();
List listSong=songRespones.getSongs();
列表selectedSingersSongs=new Arraylist();
用于(SongRespones.Songs:listSong){
if(songs.getSinger().getId()==getSingerId){
Log.e(Log,songs+);
选择歌手歌曲。添加(歌曲);
}
}
adapter.addMoreItem(selectedSingersSongs);
当然,您应该
recyclerView.setAdapter(adapter)代码>之前@Santalu非常感谢您,先生我跟踪了您,现在它起作用了:DGlad来帮助您。你能接受答案吗?桑塔卢,是的,我能