Lorsque list.size () == 0, tout le traitement de l'instruction étendue for est passé.
List<hogeDto> list = new ArrayList<>();
//list.size == 0
for(hogeDto dto : list){
    Log.d("log",dto.getId());
}
Non appelé lorsque getCount = 0. Soyez prudent lorsque vous mettez list.size () == 0 dans getCount.
Si vous définissez un nombre dans textView, il sera confondu avec un ID de ressource. Puisqu'aucun objet n'est spécifié par l'ID de ressource comme "3" J'obtiens une erreur. → Si vous convertissez en String puis setText, aucune erreur ne se produira.
int number = 3;
TextView view = findViewById(R.id.hoge);
view.setText(number);
① Dans onCreate (), remplissez l'adaptateur avec une liste de couleurs et dessinez une mise en page. (2) Lorsque onResponse () est appelé, la liste est remplie avec les données obtenues à partir de l'API. Dessinez à nouveau Layout.
HogeActivity {
  onCreate(){
① Définir les préférences partagées(Utilisé lors de l'acquisition d'API. Mesures nulles.)
    ②List<hogeDto> list = new ArrayList<>();
(3) Appelez la méthode qui acquiert les données de l'API et les emballe dans List
④ Passer la liste à l'adaptateur
  }
  
  //③ méthode
  API.getInstance.getHogePoint(){
    onResponse(){
      //Traitement pour emballer les données dans la liste
      //Les données de l'adaptateur ont changé! Notification
      adapter.notifyDataSetChanged();
    }
  }
}
Si vous utilisez runnable, l'erreur disparaît.
/**
*processus de mise à jour de l'adaptateur
*/
private Runnable adapterNotify = new Runnable() {
    @Override
    public void run() {
       adapter.notifyDataSetChanged();
   }
};
        Recommended Posts