Skip to content

dimix/ImageSlideShow

Repository files navigation

License Platform Version Carthage compatible

Swift ImageSlideShow for iOS

ImageSlideShow is a simple Slideshow for images (Picture, Photos) for your iOS apps written in Swift 5. You can use this class on iPhone and iPad as well.

alt tag

Features

  • All in one slideshow with generic protocol to provide images directly from the model
  • Pan-gesture-to-dismiss behaviour (like Facebook)

Installation with CocoaPods

CocoaPods is a dependency manager for Objective-C, which automates and simplifies the process of using 3rd-party libraries like ImageSlideShow in your projects. You can install it with the following command:

$ gem install cocoapods

CocoaPods 1.0.1+ is required to build ImageSlideShow (along with Swift 5 and Xcode 10).

Podfile

To integrate ImageSlideShow into your Xcode project using CocoaPods, specify it in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'

target 'TargetName' do
  use_frameworks!
  pod 'ImageSlideShowSwift'
end

Then, run the following command:

$ pod install

Installation with Carthage

Currently only iOS is supported.

  1. Add the following to your Cartfile:

    github "dimix/ImageSlideShow"
    
  2. Run carthage update --platform ios

  3. Copy the framework into your project and you are good to go.

How to Use

1. Import ImageSlideShowSwift module

Import ImageSlideShowSwift

ImageSlideShowSwift

2. Instantiate the controller

ImageSlideShowViewController.presentFrom(self){ [weak self] controller in
			
	controller.dismissOnPanGesture = true
	controller.slides = self?.images
	controller.enableZoom = true
	controller.controllerDidDismiss = {
		print("Controller Dismissed")
	}
			
}

You need to provide an array of [ImageSlideShowProtocol] objects. You can use the Demo project to watch details.

Requirements

Current version is compatible with:

  • Swift 5.0
  • XCode 10
  • iOS 9 or later

Are you searching for an old (unsupported) version? Check out:

Credits

Thanks to Lasse-Hansen for the Carthage support!