250x250
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 |
Tags
- 자바스크립트
- front-end
- 비전공자
- CSS
- 풀스택
- css3
- Animation
- react
- button
- 프론트엔드
- 개발자
- keyframes
- image
- jQuery
- 비전공 개발자
- 애니메이션
- HTML
- iOS 개발자
- javascript
- hover
- ipad
- xcode
- SWIFT
- iPhone
- php
- html5
- MAC
- IOS
- 백엔드
- effect
Archives
- Today
- Total
비전공자 개발일기
Dark Mode & Light Mode, Current App version check 본문
728x90
SMALL
[SceneDelegate]
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
// Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`.
// If using a storyboard, the `window` property will automatically be initialized and attached to the scene.
// This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead).
guard let _ = (scene as? UIWindowScene) else { return }
// 설정에서 선택된 mode가 활성화 되도록 작성
let rawValue = UserDefaults.standard.integer(forKey: "Appearance")
window?.overrideUserInterfaceStyle = UIUserInterfaceStyle(rawValue: rawValue) ?? .unspecified
}
import UIKit
class SettingViewController: UIViewController {
@IBOutlet weak var modeSelector: UISegmentedControl!
@IBOutlet weak var currentVersion: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
makeUI()
}
func makeUI() {
// 현재 어플의 버전 확인
let versionChk = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as! String
currentVersion.text = versionChk
// 현재 설정되어 있는 mode로 보여주는 코드
let rawValue = UserDefaults.standard.integer(forKey: "Appearance")
// 해당 rawValue를 Select
modeSelector.selectedSegmentIndex = rawValue
}
@IBAction func modeSelect(_ sender: Any) {
// Select한 것으로 mode 변경
view.window?.overrideUserInterfaceStyle = UIUserInterfaceStyle(rawValue: modeSelector.selectedSegmentIndex) ?? .unspecified
// 어플을 재실행해도 마지막으로 설정된 값이 보이도록 셋팅
UserDefaults.standard.set(modeSelector.selectedSegmentIndex, forKey: "Appearance")
}
}
728x90
LIST
'SWIFT' 카테고리의 다른 글
MVC Pattern (0) | 2023.01.13 |
---|---|
UIView Border by storyboard (0) | 2023.01.10 |
앱 등록 절차 (0) | 2023.01.08 |
App Icon (0) | 2023.01.02 |
LaunchScreen(Basic + Custom) & sleep (0) | 2023.01.02 |