반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 웹뷰
- github
- SwiftUI
- subscript
- UIButton
- Java
- 문자열
- WebView
- 다크모드
- 라이트모드
- ios
- Swift
- Apple
- swipe
- UIScrollView
- autolayout
- Alamofire
- dictionary
- Observable
- SwiftLint
- UITabBarController
- Android
- RxSwift
- string
- gcd
- LazyHStack
- remote config
- Realtime Database
- NavigationLink
- Firebase
Archives
- Today
- Total
점진적 과부하 개발 블로그
Swift WebView 로딩 애니메이션 적용하기 본문
반응형
Swift WebView 로딩 애니메이션 적용하기
UIActivityIndicatorView
- 간편하게 로딩 애니메이션을 적용하고 싶을 때 사용하면 좋습니다.
UIActivityIndicatorView | Apple Developer Documentation
A view that shows that a task is in progress.
developer.apple.com
적용해보기
class ViewController: UIViewController {
var indicatorView = UIActivityIndicatorView() // indicatorView 선언
override func viewDidLoad() {
super.viewDidLoad()
view.addSubView(indicatorView) // 뷰에 서브뷰 추가
indicatorView.snp.makeConstraints { // 오토레이아웃 설정
$0.center.equalToSuperview()
}
}
}
- indicatorView를 생성해주신 다음 웹뷰에 적용할려면 WKNavigationDelegate를 사용해야 합니다.
extension ViewController: WKNavigationDelegate {
// 웹 로딩 시작
func webView(_ webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) {
indicatorView.startAnimating()
}
// 웹 로딩 종료
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
indicatorView.stopAnimating()
}
// 웹 로딩 중 에러
func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error) {
indicatorView.stopAnimating()
}
}
- 알맞는 타이밍에 적용을 하시면 됩니다.
Custom
indicatorView.hidesWhenStopped = true // 로딩 종료 후 인디케이터 숨김 여부 -> 디폴트는 true
indicatorView.isHidden = false // 숨김 여부
indicatorView.style = .large // 크기 조정
indicatorView.color = .black // 색 변경
반응형
'Swift' 카테고리의 다른 글
Swift 다크모드 라이트모드 구분하기 (0) | 2023.07.12 |
---|---|
Swift WebView 뒤로가기 제스처(스와이프) 권한 해제 (0) | 2023.06.28 |
Swift UserDefaults 값 초기화 (0) | 2023.06.27 |
Swift WebView 앱에서 자바스크립트 함수 호출하기 (0) | 2023.06.26 |
Swift NavigationController 뒤로가기 제스처 제거 (0) | 2023.06.10 |