Latest 3.0.0
License MIT
Platforms ios , requires ARC
Dependencies SDWebImage
Frameworks Foundation

Slideshow for iOS. Easy to use. Support manual or automatic slideshow, with fade and slide transitions.
Support local and remote images.

Demo screenshot

version 3.0.0 changelog

This version introduces a lot of breaking changes. Make sure to have a look at the demo.

  • Usage is now centered around the datasource protocol.
  • Changed datasource and delegate protocols methods for more consistency
  • Introducing the long awaited remote image handling! Just put a valid image NSURL into your datasource and you’re all set.


Normal install

Simply copy into your project folder :

  • KASlideShow.h
  • KASlideShow.m

Using cocoapods

add this line to your Podfile :
pod 'KASlideShow'


Quick example

- (void)viewDidLoad
    [super viewDidLoad];
    _datasource = @[[UIImage imageNamed:@"test_1.jpg"],
                    [NSURL URLWithString:@""],

    _slideshow = [[KASlideShow alloc] initWithFrame:CGRectMake(0,0,320,250)];
    _slideshow.datasource = self;
    _slideshow.delegate = self;
    [_slideshow setDelay:3]; // Delay between transitions
    [_slideshow setTransitionDuration:1]; // Transition duration
    [_slideshow setTransitionType:KASlideShowTransitionFade]; // Choose a transition type 
    [_slideshow setImagesContentMode:UIViewContentModeScaleAspectFill]; // Choose a content mode for images to display
    [_slideshow addGesture:KASlideShowGestureTap]; // Gesture to go previous/next directly on the image

#pragma mark - KASlideShow datasource

- (NSObject *)slideShow:(KASlideShow *)slideShow objectAtIndex:(NSUInteger)index
    return _datasource[index];

- (NSUInteger)slideShowImagesNumber:(KASlideShow *)slideShow
    return _datasource.count;

#pragma mark - KASlideShow delegate

- (void) slideShowWillShowNext:(KASlideShow *)slideShow
    NSLog(@"slideShowWillShowNext, index : %@",@(slideShow.currentIndex));


You need to implement the datasource to display images.
KASlideShow can handle UIImage, NNString (name of local image) and NSURL (URL of remote image).

- (NSObject *) slideShow:(KASlideShow *)slideShow objectAtIndex:(NSUInteger)index;
- (NSUInteger) slideShowImagesNumber:(KASlideShow *)slideShow;

Use of a slideshow

[_slideshow next]; // Go to the next image
[_slideshow previous]; // Got to the previous image
[_slideshow start]; // Start automatic slideshow
[_slideshow stop]; // Stop automatic slideshow


- (void) slideShowDidShowNext:(KASlideShow *) slideShow;
- (void) slideShowDidShowPrevious:(KASlideShow *) slideShow;
- (void) slideShowWillShowNext:(KASlideShow *) slideShow;
- (void) slideShowWillShowPrevious:(KASlideShow *) slideShow;
- (void) slideShowDidSwipeLeft:(KASlideShow *) slideShow;
- (void) slideShowDidSwipeRight:(KASlideShow *) slideShow;


Here are the 3 available types of transitions you can set via setTransitionType.


You can furthermore specify the transition duration via setTransitionDuration.


Two types gestures are available to interact with the slideshow via the addGesture method. It is possible to add them both.


Latest podspec

    "name": "KASlideShow",
    "version": "3.0.0",
    "platforms": {
        "ios": null
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    "summary": "Slideshow with fade and slide transitions.",
    "homepage": "",
    "authors": {
        "Alexis Creuzot": "[email protected]"
    "source": {
        "git": "",
        "tag": "3.0.0"
    "description": "Slideshow for iOS. Easy to use. Support manual or automatic slideshow, with fade and slide transitions. nSupport local and remote images.",
    "source_files": "KASlideShow/*.{h,m}",
    "requires_arc": true,
    "frameworks": "Foundation",
    "dependencies": {
        "SDWebImage": [
            "~> 3.8"

Pin It on Pinterest

Share This