I’m using slideBox for display a kind of ebook where every slide contains lots of basic HTML tags including images.
On browser and ripple emulator it works perfectly but when i try it on device Android or IPAD its painfull slow.
Also testing it via “ionic view” makes the application crash.
It was perfect until i stayed under 10 pages of lenght.
The full ebook is now 70 pages.
Well, i can remove slideBox and use a normal “single page” controller but i liked, expecially on IPAD, that with the slideBox you can slides the pages left or right with you finger like the native “ibook” app.
I solved it using a circular slide buffer. Only 3 slides are loaded at anytime and slide content is replaced dynamically on-slide-changed depending on the direction you swipe.
I’m using more than 100 slides (each with images and text) and it is very smooth on android.
The only downside is that you have to use does-continue=“true” and the slides will loop endlessly.
Let me know if you need more technical details about that solution.
I have implemented a similar approach with 3 slides, but it is still not so smooth on my android. Can you give more information about how you replace the content?
on-slide-changed I track an event with $ionicAnalytics, perhaps this could also have an impact on the performance.
I didn’t used slide I’m just using a detail page, i.e. /app/pages/:pageID
that has a tab bar with:
home
chapter
prev
next
if you press the tab bar or if you Swipe (i capture the swipe gesture) then you change page.
If you insist that you wanna use slides i think that the trick to have nice performance is to limit the number of configured slides. However you can have a big array of data and just push/pop/slice the items of that array to map the number of slides to display in ionic 1.