Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jndisrupter/jnmultipleimages
Multiple images view
https://github.com/jndisrupter/jnmultipleimages
aspectfill cocoapods count-label image multiple-imageview newsfeed-images post-images stacked-images swift xcode
Last synced: 6 days ago
JSON representation
Multiple images view
- Host: GitHub
- URL: https://github.com/jndisrupter/jnmultipleimages
- Owner: JNDisrupter
- License: mit
- Created: 2017-09-13T15:36:28.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-10-09T13:04:38.000Z (about 1 month ago)
- Last Synced: 2024-10-09T13:19:44.380Z (about 1 month ago)
- Topics: aspectfill, cocoapods, count-label, image, multiple-imageview, newsfeed-images, post-images, stacked-images, swift, xcode
- Language: Swift
- Homepage:
- Size: 3.06 MB
- Stars: 8
- Watchers: 4
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# JNMultipleImages
[![Build Status](https://travis-ci.org/JNDisrupter/JNMultipleImages.svg?branch=master)](https://travis-ci.org/JNDisrupter/JNMultipleImages)
[![Version](https://img.shields.io/cocoapods/v/JNMultipleImages.svg?style=flat)](http://cocoapods.org/pods/JNMultipleImages)
[![License](https://img.shields.io/cocoapods/l/JNMultipleImages.svg?style=flat)](http://cocoapods.org/pods/JNMultipleImages)
[![Platform](https://img.shields.io/cocoapods/p/JNMultipleImages.svg?style=flat)](http://cocoapods.org/pods/JNMultipleImages)**JNMultipleImages** can be used to display multiple images in single view, it can be used in a newsfeed or posts. A single post can contain up to 4 displayed images, while showing a number with the remaining images if they are more than 4.
## Preview
## Requirements
- iOS 11.0+ / macOS 14.4+
- Xcode 15.3+
- Swift 5.10+## Installation
### CocoaPods
[CocoaPods](http://cocoapods.org) is a dependency manager for Cocoa projects. You can install it with the following command:
```bash
$ gem install cocoapods
```To integrate JNMultipleImages into your Xcode project using CocoaPods, specify it in your `Podfile`:
```ruby
use_frameworks!
target '' do
pod 'JNMultipleImages'
end
```Then, run the following command:
```bash
$ pod install
```
## Usage#### To add JNMultipleImages in interface builder:
1. Put some UIView and change the class to "JNMultipleImages"
2. Add refrence for it in the view controller.
3. Change Attributes:
* You can change count label attributes by accessing it directly from the JNMultipleImages reference.
* delegate : this delegate confirm to JNMultipleImagesViewDelegate.4. Call setup method:
Setup with JNImage array
```swift
setup(images: [JNImage], countLabelPosition: JNMultipleImagesCountLabelPosition = JNMultipleImagesCountLabelPosition.lastItem, placeHolderImage: UIImage? = nil, itemsMargin : CGFloat = 2.0, style: JNMultipleImagesView.style = .collection, cornerRadius: CGFloat = 0)
```Setup with array of any which might be Url String or UIImage
```swift
func setup(images: [Any], countLabelPosition: JNMultipleImagesCountLabelPosition = JNMultipleImagesCountLabelPosition.lastItem, placeHolderImage: UIImage? = nil, itemsMargin: CGFloat = 2.0, style: JNMultipleImagesView.style = .collection, cornerRadius: CGFloat = 0)
```
##### parameters
* images : The images array to load.
* countLabelPosition : The position for the count label (Fill view or fill last item).
* placeHolderImage : The placeholder image to use for failed images.
* itemsMargin : The margin between items.
* style : The style of the view, it can be collection or a stack(horizental).
* cornerRadius : corner radius for images.> The library will adjust the UIImageViews content mode automatically like the follows :
> * If the image dimensions is smaller than the image view dimensions then the content mode is aspectFill
> * If image width and height ratio less than the image view width and height ration then the content mode is aspectFill
> * If the image is landscape and the image height is less than the image view height then the content mode is topRight
> * Other than this it is aspectFit.## Authors
Jayel Zaghmoutt & Mohammad Nabulsi
## License
JNMultipleImages is available under the MIT license. See the [LICENSE](https://github.com/JNDisrupter/JNMultipleImages/blob/master/LICENSE) file for more info.