목록ios (13)
개발자의 삽질
https://developer.apple.com/documentation/security/keychain_services Apple Developer Documentation developer.apple.com 어떤 이유로 키체인에 대해 알아야 했을까? 현재 만들고 있는 앱은 서버에서 제공해준 카카오 OAuth을 통해 로그인하고 token을 받게 된다. 처음에는 이를 UserDefault를 이용해 구현하려 했으나, 이는 보안상 좋은 방법이 아니라는 것을 알게되었고, 따라서 Keychain을 공부하게 되었다. Keychain Services 에 대해서 알아보자 종종 사용자는 비밀 데이터를 안전하게 저장하고 싶어한다. 이 때 Keychain Services API가 도움을 줄 수 있다. 사용자는 자신의 비..
https://www.hackingwithswift.com/example-code/xcode/how-to-use-storyboard-references-to-simplify-your-storyboards How to use storyboard references to simplify your storyboards - free Swift 5.4 example code and tips Was this page useful? Let us know! 1 2 3 4 5 www.hackingwithswift.com 아래의 예시를 보자 탭 바 컨트롤러에 3개의 뷰 컨트롤러가 있다. 그러나 나는 이 뷰 컨트롤러들을 서로 다른 스토리보드에 따로따로 관리하고 싶다!! 이럴 때 아주 좋은 것이 바로 Storyboard Re..
https://www.hackingwithswift.com/example-code/networking/how-to-check-for-internet-connectivity-using-nwpathmonitor How to check for internet connectivity using NWPathMonitor - free Swift 5.4 example code and tips Was this page useful? Let us know! 1 2 3 4 5 www.hackingwithswift.com 이번에는 네트워크 연결 상태를 확인하자! 앱을 개발할 때, 네트워크 연결 상태에 따라 UI 변경을 주는 경우가 있다! 아래는 그 예시이다! 이와 비슷하게 네트워크 상태에 따라 UI 변경을 해보자! 일단 스..
https://developer.apple.com/documentation/foundation/iso8601dateformatter Apple Developer Documentation developer.apple.com 개발을 하다가 데이트 피커에서 날짜를 받아서 문자로 바꾸어줘야 할 일이 있었다. 서버에서 요구하는 포맷이 ISO8601 이었기 때문에 ISO8601DateFormatter 를 사용해보았다. ISO8601DateFormatter 는 Date String 이 모두 가능하지만 여기서는 Date -> String 만 다루겠다. ISO8601DateFormatter 를 이용하기 위해서는 3가지의 변수가 필요하다. Date TimeZone ISO8601DateFormatter.Options 총 1..
https://docs.swift.org/swift-book/ReferenceManual/Attributes.html Attributes — The Swift Programming Language (Swift 5.6) Attributes There are two kinds of attributes in Swift—those that apply to declarations and those that apply to types. An attribute provides additional information about the declaration or type. For example, the discardableResult attribute on a function d docs.swift.org @disca..
https://www.hackingwithswift.com/example-code/language/fixing-class-viewcontroller-has-no-initializers Fixing "Class ViewController has no initializers" - free Swift 5.4 example code and tips Was this page useful? Let us know! 1 2 3 4 5 www.hackingwithswift.com ViewController에 프로퍼티를 두고 싶다! 클래스에 프로퍼티를 담을 때는 초기값을 갖고 있거나 생성자를 통해 초기화 과정을 거쳐야 한다. 그러면 ViewController는 어떻게 할까? 일단 아래의 코드는 에러를 발생한다. class..
https://developer.apple.com/documentation/uikit/uiviewcontroller Apple Developer Documentation developer.apple.com ViewController LifeCycle 에 대해 알아보자! 뷰 컨트롤러의 수명주기는 아래의 그림을 통해 알 수 있다. 총 4개의 과정으로 나뉘어져 있다. Appearing: 뷰가 화면에 나타나는 중 Appeared: 뷰가 화면에 나타난 상태 Disappearing: 뷰가 화면에서 사라지는 중 Disappeared: 뷰가 화면에서 사라진 상태 위 4개의 과정 가운데 호출되는 메서드들이 있다. viewDidLoad() 뷰 컨트롤러의 모든 뷰들이 메모리에 로드됐을 때 호출 메모리에 처음 로드될 때 한 ..
https://docs.swift.org/swift-book/LanguageGuide/Initialization.html Initialization — The Swift Programming Language (Swift 5.5) Initialization Initialization is the process of preparing an instance of a class, structure, or enumeration for use. This process involves setting an initial value for each stored property on that instance and performing any other setup or initialization t docs.swift.or..