Skip to content

Commit 8c8a25f

Browse files
authored
Merge pull request #99 from iDevid/master
Implemented Subspec for Remote Fetch Support
2 parents c2e6a0e + 983b278 commit 8c8a25f

File tree

7 files changed

+35
-11
lines changed

7 files changed

+35
-11
lines changed

Example/Podfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ use_frameworks!
33

44
target 'Demo' do
55
pod 'ImageViewer.swift', :path => './../'
6-
end
6+
pod 'ImageViewer.swift/Fetcher', :path => './../'
7+
end

Example/Podfile.lock

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
PODS:
2-
- ImageViewer.swift (3.0):
2+
- ImageViewer.swift (3.0)
3+
- ImageViewer.swift/Fetcher (3.0):
34
- SDWebImage
4-
- SDWebImage (5.3.3):
5-
- SDWebImage/Core (= 5.3.3)
6-
- SDWebImage/Core (5.3.3)
5+
- SDWebImage (5.8.4):
6+
- SDWebImage/Core (= 5.8.4)
7+
- SDWebImage/Core (5.8.4)
78

89
DEPENDENCIES:
910
- ImageViewer.swift (from `./../`)
11+
- ImageViewer.swift/Fetcher (from `./../`)
1012

1113
SPEC REPOS:
1214
trunk:
@@ -17,9 +19,9 @@ EXTERNAL SOURCES:
1719
:path: "./../"
1820

1921
SPEC CHECKSUMS:
20-
ImageViewer.swift: a8ddca1afeea736c557ba44ce5c220d829922c8a
21-
SDWebImage: 51ab1ce3ebd20dec6665ae8ba25c928da323db41
22+
ImageViewer.swift: 5a7de1366351c307023daf71f907dedee968b5d0
23+
SDWebImage: cf6922231e95550934da2ada0f20f2becf2ceba9
2224

23-
PODFILE CHECKSUM: 3cb622a244c4948f6d66f0aaa9d36294c3ab7fe1
25+
PODFILE CHECKSUM: e724d0d4011b46b198571c9f9ed6734d40b74bc4
2426

25-
COCOAPODS: 1.8.4
27+
COCOAPODS: 1.9.3

ImageViewer.swift.podspec

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ Pod::Spec.new do |s|
1010
}
1111
s.source_files = 'Sources/*'
1212
s.requires_arc = true
13-
s.dependency 'SDWebImage'
1413
s.ios.deployment_target = '10.0'
1514
s.swift_versions = ['4.0','4.2','5.0']
1615
s.license = {
@@ -26,4 +25,9 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
2625
2726
LICENSE
2827
}
29-
end
28+
29+
s.default_subspecs = :none
30+
s.subspec 'Fetcher' do |cs|
31+
cs.dependency 'SDWebImage'
32+
end
33+
end

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,13 @@ Using [cocoapods](https://cocoapods.org)
2727
pod 'ImageViewer.swift', '~> 3.0'
2828
```
2929

30+
If you need remote image fetching:
31+
32+
```ruby
33+
pod 'ImageViewer.swift', '~> 3.0'
34+
pod 'ImageViewer.swift/Fetcher', '~> 3.0'
35+
```
36+
3037
## How to use it
3138

3239
The simplest way to to use this is by using the [imageView.setupImageViewer()](https://github.com/michaelhenry/MHFacebookImageViewer/blob/master/Example/Demo/BasicViewController.swift#L11)

Sources/ImageItem.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,7 @@ import UIKit
22

33
public enum ImageItem {
44
case image(UIImage?)
5+
#if canImport(SDWebImage)
56
case url(URL, placeholder: UIImage?)
7+
#endif
68
}

Sources/ImageViewerController.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import UIKit
2+
#if canImport(SDWebImage)
23
import SDWebImage
4+
#endif
35

46
protocol ImageViewerControllerDelegate:class {
57
func imageViewerDidClose(_ imageViewer: ImageViewerController)
@@ -90,6 +92,7 @@ class ImageViewerController:UIViewController, UIGestureRecognizerDelegate {
9092
case .image(let img):
9193
imageView.image = img
9294
imageView.layoutIfNeeded()
95+
#if canImport(SDWebImage)
9396
case .url(let url, let placeholder):
9497
imageView.sd_setImage(
9598
with: url,
@@ -102,6 +105,7 @@ class ImageViewerController:UIViewController, UIGestureRecognizerDelegate {
102105
}
103106
}
104107
}
108+
#endif
105109
default:
106110
break
107111
}

Sources/UIImageView_Extensions.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ extension UIImageView {
2222
setup(datasource: nil, options: options, from: from)
2323
}
2424

25+
#if canImport(SDWebImage)
2526
public func setupImageViewer(
2627
url:URL,
2728
initialIndex:Int = 0,
@@ -39,6 +40,7 @@ extension UIImageView {
3940
options: options,
4041
from: from)
4142
}
43+
#endif
4244

4345
public func setupImageViewer(
4446
images:[UIImage],
@@ -57,6 +59,7 @@ extension UIImageView {
5759
from: from)
5860
}
5961

62+
#if canImport(SDWebImage)
6063
public func setupImageViewer(
6164
urls:[URL],
6265
initialIndex:Int = 0,
@@ -74,6 +77,7 @@ extension UIImageView {
7477
options: options,
7578
from: from)
7679
}
80+
#endif
7781

7882
public func setupImageViewer(
7983
datasource:ImageDataSource,

0 commit comments

Comments
 (0)