일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- RxCocoa
- RxSwift
- swift6
- ios14
- NavigationLink
- IOS
- NullObject
- SwiftUI
- Operater
- RFC1738/1808
- vim
- @EnvironmentObject
- @State
- nonisolated
- @Binding
- typeorm
- Creating Operators
- @Environment
- SWIFT
- operator
- subject
- Xcode
- URL(string:)
- dismiss
- nestjs
- init?
- Bug
- init
- Operators
- graphql
- Today
- Total
목록ios14 (4)
Tunko Development Diary
사실 간단해보이는 이슈라 적용전엔 블로그에 올릴생각이 없었습니다. 하지만…… 많은 삽질을 통해 저와 같은 경험을 하게 되는 분들을 위해 이글을 남깁니다. 기존 iOS13에선 view init에서 요렇게 한줄 넣어주면 깔끔하게 separator line가 사라진것을 확인할 수 있었습니다. // 사용하지 마세요 ㅠㅠ UITableView().appearance().separatorStyle = .none 하지만, iOS14, SwiftUI 2.0에 들어와서는 해당 코드가 재대로 동작하지 않습니다. 테스트에 사용되는 cell View의 코드입니다. struct ToDoItem: Identifiable { var id = UUID() var task: String var imageName: String } ....
Fierbase 등 프레임워크를 초기화해야 되는데 AppDelegate에서밖에 할 수 없는 상황이 나온다. 이때는 아래 코드로 처리하면 된다. import SwiftUI class AppDelegate: NSObject, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { print("application is starting up. ApplicationDelegate didFinishLaunchingWithOptions.") return true }..
기존 Appdelegate를 사용할 땐 application(_:open:options:) 메서드를 통하여 URL를 라우팅해야 했지만 완전 다른 방식으로 바뀌었습니다. import SwiftUI @main struct TestApp: App { @Environment(\.scenePhase) var scenePhase var body: some Scene { WindowGroup { ContentView() .onOpenURL { url in print("Received URL: \(url)") } } } } } 위 코드를 보면 앱에 최상위 Scene에 url을 수신 할 수 있습니다. 변경된 방식의 장점은 앱 전체에 여러 url 핸들링을 적용할 수 있습니다. 즉 각 화면에서 필요한 딥링크를 개별적으로 선..
신규 프로젝트 생성시에 라이프 사이클을 선택하면 AppDelegate가 없어진 새로운 life cycle 이 적용된 프로젝트가 생성됩니다. 새로 만든 프로젝트 이름은 ’Test’라고 명명했습니다. 이후 (프로젝트명+App).swift 파일을 보면 아래 코드가 나옵니다. import SwiftUI @main struct TestApp: App { var body: some Scene { WindowGroup { ContentView() } } } 우선 제일 먼저 뜯어 볼건 @main 입니다. @main @main 기능은 앱의 시작점인 Entry Points 를 지정하는 것 입니다. @main swift-book 기존 방식인 AppDelegate에서 프레임워크 및 리소스 초기화를 진행했지만 SwiftUI 에..