Skip to content

Latest commit

 

History

History
86 lines (67 loc) · 3.07 KB

README.md

File metadata and controls

86 lines (67 loc) · 3.07 KB

MultipleImageView

Swift 5.x Cocoapods platforms Cocoapods Carthage compatible Swfit Package Manager supported
Actions Lint CocoaPods Trunk Podspec Swift build SwiftLint

Displaying multiple images like Twitter.

Installation

CocoaPods

pod 'MultipleImageView'

Carthage

github "nnsnodnb/MultipleImageView"

Swift Package Manager

// swift-tools-version:5.0
import PackageDescription

let package = Package(
    name: "SampleApp",
    dependencies: [
        .package(name: "MultipleImageView",
                 url: "https://github.com/nnsnodnb/MultipleImageView.git",
                 from: "0.1.0")
    ],
    .targets: [
        .target(name: "SampleApp,
                dependencies: ["MultipleImageView"])
    ]
)

Usage

import MultipleImageView

final class SomeView: UIView, MultipleImageViewDelegate {

    func configure() {
        let imageView = MultipleImageView(frame: .zero)
        addSubview(imageView)
        // Autolayout
        imageView.sources = [
            .uiimage(anyImage),
            .url(anyURL),
            .custom { imageView in
                // something fetch image
                imageView.image = image
            }
        ]
        imageView.delegate = self
    }

    // MARK: - MultipleImageViewDelegate
    func multipleImageViewShouldGetImage(_ imageView: UIImageView, sourceForURL url: URL, index: Int) {
        // Your project's image fetch & cache algorithm.
    }

    func multipleImageViewDidSelect(_ imageView: UIImageView, index: Int) {
    }
}

And please see Example project.

License

MultipleImageView is released under the MIT license. See LICENSE for details.