Skip to content

Commit fa6907f

Browse files
committed
Add one convenient method on WebImage to associated indicator with view builder block
1 parent bd6a9a9 commit fa6907f

File tree

3 files changed

+19
-13
lines changed

3 files changed

+19
-13
lines changed

Example/Podfile.lock

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ PODS:
88
- libwebp/mux (1.0.3):
99
- libwebp/demux
1010
- libwebp/webp (1.0.3)
11-
- SDWebImage (5.2.3):
12-
- SDWebImage/Core (= 5.2.3)
13-
- SDWebImage/Core (5.2.3)
14-
- SDWebImageSwiftUI (0.4.2):
11+
- SDWebImage (5.2.5):
12+
- SDWebImage/Core (= 5.2.5)
13+
- SDWebImage/Core (5.2.5)
14+
- SDWebImageSwiftUI (0.5.2):
1515
- SDWebImage (~> 5.1)
1616
- SDWebImageWebPCoder (0.2.5):
1717
- libwebp (~> 1.0)
@@ -33,8 +33,8 @@ EXTERNAL SOURCES:
3333

3434
SPEC CHECKSUMS:
3535
libwebp: 057912d6d0abfb6357d8bb05c0ea470301f5d61e
36-
SDWebImage: 46a7f73228f84ce80990c786e4372cf4db5875ce
37-
SDWebImageSwiftUI: b91be76ecb0cdf74c18f6cd92aae8f19a9ded02d
36+
SDWebImage: 4eabf2fa6695c95c47724214417a9c036c965e4a
37+
SDWebImageSwiftUI: 3a3e3aa707aeedf024af6f9c718177f681edf9de
3838
SDWebImageWebPCoder: 947093edd1349d820c40afbd9f42acb6cdecd987
3939

4040
PODFILE CHECKSUM: 3fb06a5173225e197f3a4bf2be7e5586a693257a

Example/SDWebImageSwiftUIDemo/DetailView.swift

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -62,13 +62,11 @@ struct DetailView: View {
6262
.scaledToFit()
6363
#else
6464
WebImage(url: URL(string:url), options: [.progressiveLoad])
65-
.indicator(
66-
Indicator { isAnimating, progress in
67-
ProgressBar(value: progress)
68-
.foregroundColor(.blue)
69-
.frame(maxHeight: 6)
70-
}
71-
)
65+
.indicator { isAnimating, progress in
66+
ProgressBar(value: progress)
67+
.foregroundColor(.blue)
68+
.frame(maxHeight: 6)
69+
}
7270
.resizable()
7371
.scaledToFit()
7472
#endif

SDWebImageSwiftUI/Classes/WebImage.swift

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,14 @@ extension WebImage {
179179
result.indicator = indicator
180180
return result
181181
}
182+
183+
/// Associate a indicator when loading image with url, convenient method with block
184+
/// - Parameter indicator: The indicator type, see `Indicator`
185+
public func indicator<T>(@ViewBuilder builder: @escaping (_ isAnimating: Binding<Bool>, _ progress: Binding<CGFloat>) -> T) -> WebImage where T : View {
186+
var result = self
187+
result.indicator = Indicator(builder: builder)
188+
return result
189+
}
182190
}
183191

184192
#if DEBUG

0 commit comments

Comments
 (0)