@h45mati Sorry for the late answer.
In your controller :
function init(){
// movies was resolved in the route
$scope.nbslides = movies.length;
$scope.myActiveSlide = (movies.length > 3) ? 1 : 0;
// you don't need a buffer if 3 slides or less
$scope.slideBuffer = $scope.nbslides > 3;
// which slide to display first
var movieid = parseInt($state.params.id);
var found = null;
if( found = $filter('filter')(movies, {id: movieid}, true) )
$scope.i = movies.indexOf(found[0]);
$scope.myViewTitle = movies[$scope.i].title;
$scope.data.movies = [];
$scope.oldActiveSlide = 1;
// fill the buffer
if ($scope.slideBuffer) {
for (var k = -1 ; k <= 1; k++) {
$scope.data.movies[k+1] = angular.copy(movies[($scope.i + $scope.nbslides + k)%$scope.nbslides]);
$scope.data.movies[k+1] = angular.extend($scope.data.movies[k+1],{nr: ($scope.i + $scope.nbslides + k)%$scope.nbslides});
}
} else {
for(var k = 0; k <= $scope.nbslides - 1 ; k++) {
$scope.data.movies.push(movies[($scope.i + k)%$scope.nbslides]);
}
}
$ionicSlideBoxDelegate.update();
})();
$scope.slideHasChanged = function(j) {
$scope.myViewTitle = $scope.data.movies[j].title;
// Detect direction and modify the buffer
if ($scope.slideBuffer) {
var previous_index = j === 0 ? 2 : j - 1;
var next_index = j === 2 ? 0 : j + 1;
var direction = (($scope.oldActiveSlide - j + 2) % 3)*2 - 1;
$scope.oldActiveSlide = j;
$scope.i = $scope.data.movies[j].nr;
angular.copy(movies[($scope.i + $scope.nbslides + direction )%$scope.nbslides], $scope.data.movies[ (direction > 0) ? next_index : previous_index ]);
$scope.data.movies[ (direction > 0) ? next_index : previous_index ].nr = ($scope.i + $scope.nbslides + direction )%$scope.nbslides;
}
};
In your View
<ion-view view-title="{{myViewTitle}}">
<ion-content scroll="false">
<ion-slide-box id="slidebox-movies" active-slide="myActiveSlide" does-continue="true" auto-play="false" on-slide-changed="slideHasChanged($index)" show-pager="false" class="has-header">
<ion-slide ng-repeat="movie in data.movies">
<ion-content has-bouncing="true">
</ion-content>
</ion-slide>
</ion-slide-box>
</ion-content>
</ion-view>
It works smoothly for me with more than 200 slides (with images and text)
Hope this helps, let me know