Skip to content

Commit 0ceeec5

Browse files
committed
Replce MagicTimerDelegate with closure
1 parent 9f2d052 commit 0ceeec5

1 file changed

Lines changed: 11 additions & 16 deletions

File tree

MagicTimer/Classes/MagicTimerView.swift

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ open class MagicTimerView: UIView {
152152

153153
initialSubView()
154154
setConstraint()
155-
confromDelegate()
155+
observeTime()
156156
setInitialValue()
157157
}
158158

@@ -161,7 +161,7 @@ open class MagicTimerView: UIView {
161161

162162
initialSubView()
163163
setConstraint()
164-
confromDelegate()
164+
observeTime()
165165
setInitialValue()
166166

167167
}
@@ -171,8 +171,14 @@ open class MagicTimerView: UIView {
171171

172172
}
173173
/// Called when interface is initialized. Override this method for conforming delegate.
174-
func confromDelegate() {
175-
broker.delegate = self
174+
func observeTime() {
175+
broker.observeElapsedTime = { timeInterval in
176+
self.elapsedTime = timeInterval
177+
DispatchQueue.main.async {
178+
self.timerLabel.text = self.formatter.converToValidFormat(ti: timeInterval)
179+
self.delegate?.timerElapsedTimeDidChange(timer: self, elapsedTime: timeInterval)
180+
}
181+
}
176182
}
177183

178184
public override class var layerClass: AnyClass {
@@ -265,18 +271,7 @@ open class MagicTimerView: UIView {
265271
}
266272

267273
}
268-
extension MagicTimerView: MagicTimerDelegate {
269-
270-
/// Called when broker send the elapsed time.
271-
public func observeTimeInterval(_ ti: TimeInterval) {
272-
self.elapsedTime = ti
273-
DispatchQueue.main.async {
274-
self.timerLabel.text = self.formatter.converToValidFormat(ti: ti)
275-
self.delegate?.timerElapsedTimeDidChange(timer: self, elapsedTime: ti)
276-
}
277-
}
278-
279-
}
274+
280275
extension MagicTimerView: StandardConstraintableView {
281276

282277
/// Set constraint of any element in object. Called in init after initialSubView method.

0 commit comments

Comments
 (0)