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