@@ -12,6 +12,12 @@ class MainVC: UIViewController {
1212
1313 let appDelegate = UIApplication . shared. delegate as? AppDelegate
1414 var lastContentOffset : CGFloat = 0.0
15+ lazy var refreshControl : UIRefreshControl = {
16+ let refresh = UIRefreshControl ( )
17+ refresh. addTarget ( self , action: #selector( pullToRefresh ( _: ) ) , for: . valueChanged)
18+
19+ return refresh
20+ } ( )
1521
1622 // gps 버튼 활성화 여부
1723 var isOnGPS : Bool = false {
@@ -119,6 +125,12 @@ class MainVC: UIViewController {
119125
120126 NotificationCenter . default. addObserver ( self , selector: #selector( appMovedToForeground) , name: UIApplication . willEnterForegroundNotification, object: nil )
121127 NotificationCenter . default. addObserver ( self , selector: #selector( receiveSearchData) , name: NSNotification . Name ( rawValue: " search " ) , object: nil )
128+
129+ mainScrollView. refreshControl = refreshControl
130+ }
131+
132+ override func viewDidAppear( _ animated: Bool ) {
133+ refreshControl. didMoveToSuperview ( )
122134 }
123135
124136 override func viewSafeAreaInsetsDidChange( ) {
@@ -148,6 +160,7 @@ class MainVC: UIViewController {
148160 mainScrollView. isPagingEnabled = true
149161 mainScrollView. backgroundColor = . clear
150162 mainScrollView. showsVerticalScrollIndicator = false
163+ mainScrollView. delegate = self
151164 mainTopScrollView. showsVerticalScrollIndicator = false
152165 mainTopScrollView. delegate = self
153166
@@ -754,6 +767,12 @@ class MainVC: UIViewController {
754767 }
755768 }
756769 }
770+
771+ @objc func pullToRefresh( _ sender: UIRefreshControl ) {
772+ checkLocationAndGetWeatherData ( )
773+
774+ sender. endRefreshing ( )
775+ }
757776}
758777
759778// MARK: - UICollectionViewDataSource
0 commit comments