728x90
받아온 데이터를 실시간으로 업데이트할때 쓰이는 메소드다. 아래 코드를 해당 VC에 작성한다.
lazy var refreshControl: UIRefreshControl = {
let refreshControl = UIRefreshControl()
refreshControl.addTarget(self, action: #selector(handleRefresh(_:)), for: UIControl.Event.valueChanged)
refreshControl.tintColor = UIColor.red
return refreshControl
}()
스토리보드의 scrollView를 파일에 연결시키고 viewdidload() 아래에 작성해준다.
참고로 필자는 scrollView의 이름을 똑같이 scrollView로 했기에 해당. 코드가 아래와 같이 쓰였다.
scrollView.addSubview(self.refreshControl)
그리고 원하는 액션을 아래 주석에다 담아주면 끝!
@objc func handleRefresh(_ refreshControl: UIRefreshControl) {
//원하는 액션 여기다가 작성
refreshControl.endRefreshing()
}
아! 참고로 이걸 쓰겠다고 억지로 scrollView를 만드는 것은 비추천한다. scrollView의 height가 safeArea를 넘지 못해서 애초에 스크롤이 안된다면 해당 기능은 실행되지 않는다. 만약 안된다면 scrollView의 height를 억지로 길게 늘려서 컴파일 해보자.
+
UIScrollview로부터 상속받은 뷰들은 alwaysbounceVertical 혹은 alwaysbounceHorizontal을 이용하면 억지로 뷰의 크기를 늘리지 않아도 스크롤이 가능하여 해당 기능을 사용할 수 있다.
728x90
'Dev > iOS' 카테고리의 다른 글
[Dev, iOS] iOS 앱에 카카오 애드핏(Kakao AdFit) 연동 및 구현하기 (0) | 2021.01.15 |
---|---|
[Dev, iOS] 네트워크 상태 확인하기 (0) | 2021.01.11 |
[Dev, iOS] 해당 URL로 이동하기 (0) | 2021.01.11 |
[Dev, iOS] 코드로 custom color 사용하기 (0) | 2021.01.11 |
[Dev, iOS] Google Admob 배너 위치 변경하기 (0) | 2021.01.11 |