Вытащить из первого значения List <Pair <String, String >> и установить в TextView - PullRequest
0 голосов
/ 08 ноября 2018

Я перешел из моего 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, вторая - это фотография, которая в данном случае не имеет значения.

...