Мой ListView в MainActivity имеет задержку при прокрутке, я исследую эту проблему
и я считаю, что я должен сохранить изображения в кэш-памяти. Затем многие решения, которые я нашел, были для списка объектов, которые реализуют сериализуемые, дело в том, что у меня есть объекты, которые реализуют Parcelable, чтобы я мог отправить их в другое действие.
Мои классы (без методов getter и setters и parcelable методов, это не имеет значения в этой проблеме):
public class Character implements Parcelable{
private String character_name;
private String character_city;
private int img_data;
private List<Audio> audios;
Character(String character_name, String character_city, int img_data){
this.character_name = character_name;
this.character_city = character_city;
this.img_data = img_data;
this.audios = null;
}
}
public class Audio implements Parcelable{
private String audio_name;
private int audio_id;
public Audio(String audio_name, int audio_id){
this.audio_name = audio_name;
this.audio_id = audio_id;
}
}
Вот что я получил в on_create:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (characters_list.isEmpty()){
fill_character_list();
}
character_list_view = findViewById(R.id.list_view_main_characters);
character_list_view.setAdapter(new Adapter(this, characters_list));
character_list_view.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView parent, View view, int position, long id) {
Character character = characters_list.get(position);
Intent intent = new Intent(getBaseContext(), CharacterAudiosActivity.class);
intent.putExtra("CHARACTER", character);
startActivity(intent);
}
});
}
Буду рад, если есть способ оптимизировать прокрутку в списке
PS: если я добавляю одни и те же 4 или 5 объектов в список много раз, я не получаю это отставание (повторяются одни и те же изображения, и оно плавное)