본문 바로가기
모바일앱/iOS

refresh control 사용하기

by GeekCode 2022. 12. 13.
반응형

웹뷰를 아래로 스와이프하면 새로고침 되는 경험이 있을 것이다. 

 

아이폰의 웹뷰에는 scrollView가 있고 여기에는  refresh control이라 부르는 것을  세팅할 수 있다. 

이때 scrollView delegate를 세팅해야하고 특히 scrollView bounce는 false로 해두면 작동하지 않는다.

let mainWebView = WKWebView()
let refreshControl = UIRefreshControl()

self.mainWebView.scrollView.addSubview(refreshControl)

refreshControl.addTarget(self, action: #selector(reloadWebView(_:)), for: .valueChanged)

/// 웹뷰 리프레시
    @objc func reloadWebView(_ sender: UIRefreshControl) {
        self.mainWebView.reload()
        sender.endRefreshing()
    }

mainWebView.scrollView.delegate = self
mainWebView.scrollView.bounces = true
mainWebView.scrollView.alwaysBounceVertical = false

 

반응형