{"id":15471903,"url":"https://github.com/dkhamsing/dkimagebrowser","last_synced_at":"2025-04-22T13:46:01.606Z","repository":{"id":15252936,"uuid":"17981999","full_name":"dkhamsing/DKImageBrowser","owner":"dkhamsing","description":"iOS Image Browser with a Thumbnail Strip","archived":false,"fork":false,"pushed_at":"2017-04-27T20:46:18.000Z","size":8735,"stargazers_count":57,"open_issues_count":14,"forks_count":10,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-14T17:49:19.459Z","etag":null,"topics":["ios"],"latest_commit_sha":null,"homepage":"","language":"Objective-C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dkhamsing.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-03-21T14:22:22.000Z","updated_at":"2025-01-02T03:45:16.000Z","dependencies_parsed_at":"2022-09-09T09:10:19.454Z","dependency_job_id":null,"html_url":"https://github.com/dkhamsing/DKImageBrowser","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkhamsing%2FDKImageBrowser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkhamsing%2FDKImageBrowser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkhamsing%2FDKImageBrowser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkhamsing%2FDKImageBrowser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dkhamsing","download_url":"https://codeload.github.com/dkhamsing/DKImageBrowser/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250251216,"owners_count":21399783,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ios"],"created_at":"2024-10-02T02:22:19.903Z","updated_at":"2025-04-22T13:46:01.584Z","avatar_url":"https://github.com/dkhamsing.png","language":"Objective-C","funding_links":[],"categories":[],"sub_categories":[],"readme":"DKImageBrowser\n==============\n\niOS controller to display images (URL or `UIImage`) alongside a strip of thumbnails\n\n[![Build Status](https://api.travis-ci.org/dkhamsing/DKImageBrowser.svg?branch=master)](https://travis-ci.org/dkhamsing/DKImageBrowser)\n[![Version](https://img.shields.io/cocoapods/v/DKImageBrowser.svg?style=flat)](https://cocoapods.org/pods/DKImageBrowser)\n[![License](https://img.shields.io/cocoapods/l/DKImageBrowser.svg?style=flat)](http://cocoadocs.org/docsets/DKImageBrowser)\n[![Platform](https://img.shields.io/cocoapods/p/DKImageBrowser.svg?style=flat)](http://cocoadocs.org/docsets/DKImageBrowser)\n\n![](Assets/demo.gif)\n\n# Installation\n## Manual\n- Drag `DKImageBrowser/DKImageBrowser` to your project.\n- `#import \"DKImageBrowser.h\"` (or `#import \"DKModalImageBrowser.h\"`)\n\n## [CocoaPods](https://cocoapods.org/)\n``` ruby\nplatform :ios, '9.0'\npod 'DKImageBrowser'\n```\n\n# Usage\nSet up the data source array and pass it to an instance of `DKImageBrowser`.\n\n```  objc    \n    DKImageBrowser *imageBrowser = [[DKImageStripController alloc] init];\n    imageBrowser.DKImageDataSource =  @[ @\"http://placekitten.com/230/400\",\n                                  \t     @\"http://placekitten.com/240/400\"], ];\n    [self.navigationController pushViewController:imagesController animated:YES];\n\n```\n\nThe data source `DKImageDataSource` can also be a list of `UIImage` objects.\n\n``` objc\n    imageBrowser.DKImageDataSource = @[ [UIImage imageNamed:@\"400-1.jpg\"],\n                                        [UIImage imageNamed:@\"400-2.jpg\"], ];\n```\n                                  \nTo present the controller modally, use `DKModalImageBrowser`.\n\n``` objc\n    DKModalImageBrowser *modalImageBrowser = [[DKModalImageBrowser alloc] init];    \n    // note: use modalImageBrowser.imageBrowser to set data source, customize\n    modalImageBrowser.imageBrowser.DKImageDataSource = @[ [UIImage imageNamed:@\"400-1.jpg\"],\n                                                          [UIImage imageNamed:@\"400-2.jpg\"], ];\n    [self presentViewController:modalImageBrowser animated:YES completion:nil];\n\n```\n\n## Swift\n\n``` swift\n \tfunc actionDefault() {\n        let imageBrowser = DKImageBrowser()\n        imageBrowser.title = \"UIImage Data Source\"\n        \n        let imageDataSource: [UIImage] = [\n            UIImage(named: \"400-1.jpg\")!,\n            UIImage(named: \"400-2.jpg\")!,\n        ]\n        imageBrowser.DKImageDataSource = imageDataSource\n        \n        self.navigationController?.pushViewController(imageBrowser, animated: true)\n    }\n    \n    func actionCustom() {\n        var kittenDataSource: [NSString] = []\n        let imageHeight = 416\n        let imageWidth = Int(self.view.bounds.size.width - 20)\n        \n        for index in 1...10 {\n            let placeKitten = \"http://placekitten.com/\\(imageWidth + (index * 2  + 10))/\\(imageHeight)\" as NSString\n            kittenDataSource.append(placeKitten)\n        }\n        \n        let modalImageBrowser = DKModalImageBrowser()\n        modalImageBrowser.title = \"URL Data Source\"\n        \n        modalImageBrowser.imageBrowser.DKImageDataSource = kittenDataSource\n        modalImageBrowser.imageBrowser.DKImagePadding = 5\n        modalImageBrowser.imageBrowser.DKThumbnailStripHeight = 110\n        modalImageBrowser.imageBrowser.DKBackgroundColor = UIColor.blackColor()\n        modalImageBrowser.imageBrowser.DKThumbnailStripPosition = 0\n        modalImageBrowser.imageBrowser.DKStartIndex = 2\n        \n        self.presentViewController(modalImageBrowser, animated: true, completion: nil)\n    }\n\n```\n\n## Customization\n- `DKBackgroundColor` Background color of the image browser. The default is white.\n- `DKImagePadding` Padding around the images. The default is 20.\n- `DKImageWidth` Width of the main image being displayed. The default is the width of the screen -100.\n- `DKStartIndex` Starting image index. The default is 0 (first image).\n- `DKThumbnailStripHeight` Height of the thumbnail strip. The default is 100.\n- `DKThumbnailStripPosition`  Position of the thumbnail strip, either `DKThumbnailStripPositionTop` or `DKThumbnailStripPositionBottom`. The default is `DKThumbnailStripPositionBottom`.\n\n# Demo\nDKImageBrowser includes Swift and Objective-C demo projects.\n\n# Compatibility\nThis project was tested with iOS 9.\n\n# Contact\n- [github.com/dkhamsing](https://github.com/dkhamsing)\n- [twitter.com/dkhamsing](https://twitter.com/dkhamsing)\n\n# License\nDKImageBrowser is available under the MIT license. See the [LICENSE](LICENSE) file for more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdkhamsing%2Fdkimagebrowser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdkhamsing%2Fdkimagebrowser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdkhamsing%2Fdkimagebrowser/lists"}