@dimasik100200

Как исправить вылет приложения при прокручивании recycler view?

Создал recycler view с header, однако при прокручивании приложения вылетает и появляется ошибка
java.lang.IndexOutOfBoundsException: Index: 4, Size: 4
                                                                                 at java.util.ArrayList.get(ArrayList.java:437)
                                                                                 at com.example.testapp147.adapter.RecyclerViewAdapter.onBindViewHolder(RecyclerViewAdapter.java:51)

logcat указывает на строчку 51
CardViewObject profiles = postArrayList.get(position);

Она находится в onBindViewHolder
@Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
        if (holder instanceof HeaderViewHolder) {
            HeaderViewHolder headerHolder = (HeaderViewHolder) holder;
            headerHolder.headerCity.setText("");
            headerHolder.headerCountry.setText("");
            headerHolder.headerTime.setText("");
            headerHolder.headerTemperature.setText("");
        } else if (holder instanceof ItemViewHolder) {
            CardViewObject profiles = postArrayList.get(position);
            ((ItemViewHolder) holder).avatar.setImageResource(profiles.getCardAvatar());
            ((ItemViewHolder) holder).name.setText(profiles.getCardName());
            ((ItemViewHolder) holder).location.setText(profiles.getCardLocation());
            ((ItemViewHolder) holder).cardImage.setImageResource(profiles.getCardImage());
            ((ItemViewHolder) holder).description.setText(profiles.getCardDescription());
        }
    }

Как исправить данную ошибку? Весь код адаптера скину в комменты.
  • Вопрос задан
  • 146 просмотров
Решения вопроса 1
AlexanderYudakov
@AlexanderYudakov
C#, 1С, Android, TypeScript
CardViewObject profiles = postArrayList.get(position - 1);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы