일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 클린 코드
- uiscrollview
- 리팩토링
- combine
- 스위프트
- rxswift
- 리펙토링
- UICollectionView
- Clean Code
- swiftUI
- SWIFT
- Xcode
- clean architecture
- 리펙터링
- MVVM
- 애니메이션
- Refactoring
- UITextView
- map
- uitableview
- swift documentation
- collectionview
- Protocol
- Human interface guide
- HIG
- Observable
- tableView
- RxCocoa
- ios
- ribs
- Today
- Total
목록NotificationCenter (6)
김종권의 iOS 앱 개발 알아가기
로그인 화면전환 플로우 AppController라는 모듈을 만들어서 사용 singleton으로 구현 AppDelegate에서 호출 NotificationCenter로 auth 상태가 바뀐이벤트를 구독하고 있다가, auth 상태가 바뀌면 로그인이 되었는지 확인 후 rootViewController에 화면 입력 로그인 상태가 바뀐 noti를 파악하기 위해 Notification.Name에 authStateDidChange 이름 추가 import Foundation extension Notification.Name { static let authStateDidChange = NSNotification.Name("authStateDidChange") } AppController 구현 singleton 초기화 시..
NotificationCenter 특정 코드에 데이터를 보내고 싶은 경우나, 특정 이벤트를 받고 싶은 경우 사용 post하는 부분과 addObserver부분이 존재 post: 노티 전송 addObserver: 노티 받는 입장 사용 방법 노티 구분은 Notification.Name 객체로 구분하므로, 사용할 노티 이름 설정 extension Notification.Name { static let print = NSNotification.Name("print") } post 부분 NotificationCenter.default.post(name: .print, object: nil) addObserver부분 (이벤트를 받을 부분) NotificationCenter.default.addObserver(self..
푸시의 종류 로컬 푸시(local notification): 앱으로부터 push를 앱에 띄우는 것 서버 푸시(remote notification): 서버로부터 push를 앱에 띄우는 것 - ios-development.tistory.com/264 푸시 권한 요청 푸시를 다루는 객체는 `UNUserNotificationCenter`의 싱글톤 객체 활용 class ViewController: UIViewController { let userNotiCenter = UNUserNotificationCenter.current() // 추가 override var viewDidLoad() { super.viewDidLoad() } } 사용자에게 알림 권한 요청을 하는 메소드 추가: UNAuthorizationOpt..
푸시의 종류 로컬 푸시(local notificatino): 앱으로부터 push를 앱에 띄우는 것 - ios-development.tistory.com/386 서버 푸시(remote notificatino): 서버로부터 push를 앱에 띄우는 것 서버에서 푸시를 받는 원리 Apple Developer 홈페이지에서 push서비스와 함께 Identifiers등록 push서비스와 함께 certificates 발급 APNs에 디바이스 토큰 등록 Identifiers에 push등록 Certificates생성, Provisioning profile생성 방법은 여기 참고: ios-development.tistory.com/256?category=936128 디바이스 토큰을 APNs에 등록하는 원리 디바이스 토큰: i..
Rx를 쓰지 않고 NotificationCenter를 이용한 방법은 여기 참고 NotificationCenter를 쓰는 경우 화면이 background에서 foreground로 변하는 경우 AppDelegate에서 딥링크 처리시, 특정 화면에 event를 주입해주고 알림을 보내는 경우 사용준비 pod file에 아래 정보 입력 후 pod install pod 'RxSwift' pod 'RxCocoa' 기본 구조 (케이스: AppDelegate에서 home에 노티를 보내고 싶은 경우) NotificationCenter를 구별할 수 있는 key 정의 (타입은 NSNotification.Name(_ :String)) // Constants extension NSNotification.Name { static ..
1. 개념 - 특정 객체가 NotificationCenter에 등록된 Event를 발생(post) - 등록된 Observer들이 Event에 대한 행동을 취하는 것 2. 구현 버튼을 클릭하면 Label이 안보이게 하는 내용 1) post (이벤트 발생) @IBAction func unhide(_ sender: Any) { NotificationCenter.default.post(name: NSNotification.Name(rawValue: "unhide"), object: nil, userInfo: nil) } 2) 이벤트 처리 adObserver // in the viewDidLoad NotificationCenter.default.addObserver(self, selector: #selector(..