-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSplashViewController.swift
75 lines (63 loc) · 2.2 KB
/
SplashViewController.swift
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
//
// SplashViewController.swift
// dogether
//
// Created by seungyooooong on 2/15/25.
//
import Foundation
import UIKit
import SnapKit
final class SplashViewController: BaseViewController {
private let logoView = UIView()
private let logoImageView = {
let imageView = UIImageView()
imageView.image = .logo
return imageView
}()
private let logoTypoImageView = {
let imageView = UIImageView()
imageView.image = .logoTypo
return imageView
}()
override func viewDidLoad() {
super.viewDidLoad()
DispatchQueue.main.asyncAfter(deadline: .now() + 2) {
// TODO: 추후 viewModel로 이동
Task { @MainActor in
if UserDefaultsManager.shared.accessToken == nil {
NavigationManager.shared.setNavigationController(OnboardingViewController())
} else {
let response: GetIsJoiningResponse = try await NetworkManager.shared.request(GroupsRouter.getIsJoining)
if response.isJoining {
NavigationManager.shared.setNavigationController(MainViewController())
} else {
NavigationManager.shared.setNavigationController(StartViewController())
}
}
}
}
}
override func configureView() { }
override func configureHierarchy() {
[logoView].forEach { view.addSubview($0) }
[logoImageView, logoTypoImageView].forEach { logoView.addSubview($0) }
}
override func configureConstraints() {
logoView.snp.makeConstraints {
$0.center.equalToSuperview()
$0.width.equalTo(127)
$0.height.equalTo(136)
}
logoImageView.snp.makeConstraints {
$0.centerX.equalToSuperview()
$0.top.equalToSuperview()
$0.width.height.equalTo(82)
}
logoTypoImageView.snp.makeConstraints {
$0.centerX.equalToSuperview()
$0.bottom.equalToSuperview()
$0.width.equalTo(127)
$0.height.equalTo(30)
}
}
}