Skip to content

Commit d695de1

Browse files
committed
Use rx.methodInvoked
1 parent 02bc729 commit d695de1

File tree

3 files changed

+29
-30
lines changed

3 files changed

+29
-30
lines changed

Example/Podfile.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ PODS:
1212
- RxCocoa (5.1.1):
1313
- RxRelay (~> 5)
1414
- RxSwift (~> 5)
15-
- RxController (1.1):
15+
- RxController (1.1.1):
1616
- RxCocoa (~> 5)
1717
- RxFlow (~> 2.7)
1818
- RxSwift (~> 5)
@@ -64,7 +64,7 @@ SPEC CHECKSUMS:
6464
Reusable: 53a9acf5c536f229b31b5865782414b508252ddb
6565
RxBinding: da433c012633802a72c2a5bec8775b86f4cddeb8
6666
RxCocoa: 32065309a38d29b5b0db858819b5bf9ef038b601
67-
RxController: f4b42f77e2298a81720de4fc4580e10b38ea0b69
67+
RxController: 72db6a1e0d1b9e6c3f85b0379a8b9e8b3273ae6e
6868
RxDataSources: efee07fa4de48477eca0a4611e6d11e2da9c1114
6969
RxDataSourcesSingleSection: 4394e57ae097f33e3845cf3a57bdf7826eca2d38
7070
RxFlow: 029e260333ef843b349ba9cb9265929941830aee

RxController.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
Pod::Spec.new do |s|
1010
s.name = 'RxController'
11-
s.version = '1.1'
11+
s.version = '1.1.1'
1212
s.summary = 'A library for developing with MVVM-C based on RxFlow and RxSwift.'
1313

1414
# This description is used to generate tags and improve search results.

RxController/Classes/RxViewController.swift

Lines changed: 26 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,35 @@ open class RxViewController<ViewModel: RxViewModel>: UIViewController, RxViewCon
4343
public init(viewModel: ViewModel) {
4444
self.viewModel = viewModel
4545
super.init(nibName: nil, bundle: nil)
46+
47+
rx.methodInvoked(#selector(viewDidLoad))
48+
.map { _ in }
49+
.bind(to: viewModel.viewDidLoadSubject)
50+
.disposed(by: disposeBag)
51+
52+
rx.methodInvoked(#selector(viewWillAppear(_:)))
53+
.map { _ in }
54+
.bind(to: viewModel.viewWillAppearSubject)
55+
.disposed(by: disposeBag)
56+
57+
rx.methodInvoked(#selector(viewDidAppear))
58+
.map { _ in }
59+
.bind(to: viewModel.viewDidAppearSubject)
60+
.disposed(by: disposeBag)
61+
62+
rx.methodInvoked(#selector(viewWillDisappear(_:)))
63+
.map { _ in }
64+
.bind(to: viewModel.viewWillDisappearSubject)
65+
.disposed(by: disposeBag)
66+
67+
rx.methodInvoked(#selector(viewDidDisappear(_:)))
68+
.map { _ in }
69+
.bind(to: viewModel.viewDidDisappearSubject)
70+
.disposed(by: disposeBag)
4671
}
4772

4873
required public init?(coder aDecoder: NSCoder) {
49-
fatalError("init(coder:) has not been implemented")
74+
fatalError("RxController does not support to initialized from storyboard or xib!")
5075
}
5176

5277
deinit {
@@ -56,37 +81,11 @@ open class RxViewController<ViewModel: RxViewModel>: UIViewController, RxViewCon
5681
open override func viewDidLoad() {
5782
super.viewDidLoad()
5883

59-
viewModel.viewDidLoadSubject.onNext(())
60-
6184
subviews().forEach { view.addSubview($0) }
6285
createConstraints()
6386
bind().forEach { $0.disposed(by: disposeBag) }
6487
}
6588

66-
open override func viewWillAppear(_ animated: Bool) {
67-
super.viewWillAppear(animated)
68-
69-
viewModel.viewWillAppearSubject.onNext(())
70-
}
71-
72-
open override func viewDidAppear(_ animated: Bool) {
73-
super.viewDidAppear(animated)
74-
75-
viewModel.viewDidAppearSubject.onNext(())
76-
}
77-
78-
open override func viewWillDisappear(_ animated: Bool) {
79-
super.viewWillDisappear(animated)
80-
81-
viewModel.viewWillDisappearSubject.onNext(())
82-
}
83-
84-
open override func viewDidDisappear(_ animated: Bool) {
85-
super.viewDidDisappear(animated)
86-
87-
viewModel.viewDidDisappearSubject.onNext(())
88-
}
89-
9089
open func subviews() -> [UIView] {
9190
Log.debug("[WARNING] \(type(of: self)).subview() has not been overrided")
9291
return []

0 commit comments

Comments
 (0)