Я перешел из моего MainFragment в список моих адаптеров:
viewModelAppe.getResponseLiveDataCombinedResult().observe(getActivity(),
combinedResult -> mainAdapter.setProjectList(combinedResult.getArtistsWithPhoto()
)) ;
мой метод в adaper:
private List<Pair<String,String>> localList = Collections.emptyList();
public void setProjectList (final List<Pair<String,String>> list ){
if (list != null){
localList = list;
notifyDataSetChanged();
}else {
Log.v("LOGer","isssue in adapter");
}
}
мой класс CombinedResult
открытый класс CombinedResult {
List<Pair<String,String>> perfectMapNameAndFoto;
private final RootiTune ituneResult;
private final RootLastFm lastFmResult;
public CombinedResult(RootiTune ituneResult, RootLastFm lastFmResult) {
this.ituneResult = ituneResult;
this.lastFmResult = lastFmResult;
}
public List<Pair<String,String>> getArtistsWithPhoto ()
{
perfectMapNameAndFoto = new ArrayList<>() ;
if (ituneResult.getListSongs() != null){
for (ResultiTune item : ituneResult.getListSongs() ){
perfectMapNameAndFoto.add(new Pair <String,String> (item.getArtistName(),item.getArtworkUrl100() ));
}
}
if(lastFmResult.getResults().getArtistmatches().getListOfLatsFmArtists() != null) {
for (ArtistLastFm item : lastFmResult.getResults().getArtistmatches().getListOfLatsFmArtists())
perfectMapNameAndFoto.add(new Pair<String, String>(item.getName(), item.getUrl()));
}
return perfectMapNameAndFoto;
}
}
и метод:
@BindingAdapter("setName")
public static void setName (@NonNull TextView textView, Pair <String,String> value, CombinedResult name){
name.getArtistsWithPhoto();
List<Pair<String, String>> valuePair = name.getArtistsWithPhoto();
textView.setText(String.valueOf(valuePair));
}
Вопрос:
моя проблема в том, что я не знаю, как извлечь данные из первой строки
List<Pair<String,String>
первая строка содержит имя, которое я хочу вставить в мой textView в item_list в recyclerView, вторая - это фотография, которая в данном случае не имеет значения.