Вы пытаетесь внедрить карусель? В то время как я бы сделал это, упаковав предыдущее, текущее и следующее изображение в горизонтальный скроллер (связавшись только с этими тремя дочерними изображениями). Установите привязку скроллера к значению true. Настройте слушателя, который будет переключать изображения в скроллере.
Например, учитывая девять изображений и предполагая, что мы начнем с просмотра пятых изображений, скроллер будет выглядеть следующим образом:
1 2 3 4[5]6 7 8 9
Если пользователь проведет пальцем влево, скроллер перейдет к изображению 6. В идеале у нас есть эта модель:
1 2 3 4 5[6]7 8 9
Однако не всегда удобно загружать все изображения в память одновременно. В этом случае скроллер заполняется так:
4 [5] 6
Когда пользователь прокручивает изображение 6, мы загружаем новое изображение после шести (если доступно), а затем удаляем изображение 4. Теперь скроллер выглядит следующим образом:
5[6]7
Это должно обеспечить базовое поведение карусели. Слушатель может просто не загрузить следующее изображение, когда пользователь достигнет конца списка изображений, а скроллер запретит прокрутку за пределы.