본문 바로가기
반응형

프로그래밍/Swift51

스위프트 익스텐션을 이용한 Touch ID구현(지문인식) 오브젝티브-C에서는 구현을 한 적이 있는데 Swift에서도 동일한 방식으로 구현한 예제(샘플)이다. 비교적 간단하다. extension ProfileViewController { func touchID() { let context = LAContext() var error: NSError? let msg = "인증이 필요합니다." let deviceAuth = LAPolicy.deviceOwnerAuthenticationWithBiometrics //인증정책 if context.canEvaluatePolicy(deviceAuth, error: &error) { context.evaluatePolicy(deviceAuth, localizedReason: msg, reply: { (success, e) in.. 2018. 3. 12.
스위프트 네트워크 통신 예(POST / GET) 가장 많이 궁금했던 부분이 네트워크 통신 부분. 실무에서 아무래도 네트워크 사용하지 않는 프로젝트가 없기 때문이다. 스위프트에서도 역시 좋은 라이브러리가 있는데 'Alamofire'에 대해는 다음장에서 실습하기로 하고, 기본적인 네트워크 통신 Method인 'get','post'에 대한 예제 코드를 올려 둔다. post방식 func post() { let userId = "younghu.min@gmail.com"; let name = "후씨"; let param = "userId=\(userId)&name=\(name)" let paramData = param.data(using: .utf8) // let url = URL(string : "url"); // var request = URLRequest(.. 2018. 3. 12.
커스텀 프로퍼티 리스트를 이용한 데이터 처리 방법(예제코드) 아이폰 앱 개발이다 보니 핵심적인 부분은 코코아 터치 기반 기술들을 사용하는 것에는 스위프트나 오브젝티브-C나 같다. 다만 언어적 구현 기법에 차이가 있을 뿐이다. 일부 예외는 있겠지만. 2010년부터 아이폰을 개발해오면서 숱하게 헛탕질하고 시행착오를 거쳐 습득된 기술들이 머리속에 있어 장문의 책 내용을 꼼꼼하게 읽을 필요까지는 없었다. 다만 알고 있는 기술을 어떤 방식으로 스위프트에서 사용해야하나가 궁금하다. pList파일을 사용하는 예제 코드를 옮겨 둘까 한다. 핵심은 documentDirectory와 path, write toFile등일 것 같다. import Foundation //1단계 : data.plist 파일을 읽어 온다. let paths = NSSearchPathForDirectorie.. 2018. 3. 7.
UIView.animate with Swift Code 스위프트에서 UIView 애니메이션 관련 샘플 코드를 포스팅 한다. 맥락만 이해한다면 오브젝티브-C와 크게 다르지 않으므로 응용해서 애니메이션을 사용할 수 있을 듯 하다. 본 예제는 책의 사이드 메뉴를 만들때 좌에서 우로 우에서 좌로 나오고 들어가는 애니메이션에 대한 코드다. let options = UIViewAnimationOptions([.curveEaseInOut, .beginFromCurrentState]) UIView.animate( withDuration: TimeInterval(self.SLID_TIME), delay: TimeInterval(0), options: options, animations: { self.contentVC?.view.frame = CGRect(x: 0, y: 0,.. 2018. 3. 6.
Swift프로젝트에 Objective-C클래스 사용하기(브릿징헤더:Bridging Header) Swift프로젝트에서 Objective-C로 짜여진 클래스를 가져다 사용할 경우 사용되는 브릿징 헤더 파일에 대한 이야기이다. 실습을 해보면서 보니 사이드 바 메뉴 구현에서는 따로 구현하지 않고 Objective-C로 구현된 클래스를 넣어 사용하는데 흥미로운 주재이다. Swift와 Objective-C를 교차 사용하는 방법에 대한 설명이다. Create Bridging Header를 선택하면 브릿징헤더 파일이 생긴다. 이 파일은 오브젝티브-C에서 정의된 객체를 스위프트 아키텍처가 참조할 수 있도록 중간에 다를 놓아주는 역할을 한다. 그래서 파일의 이름에 브릿지(Bridge)라는 단어가 붙어 있고 이 파일의 형식이 헤더 파일(*.h)이기 때문에 둘을 합쳐 브릿징 헤더 파일이라고 부르게 되었다고 한다. 파일.. 2018. 3. 6.
navigationController navigationBar숨기기 책을 보며 따라하기를 하는 중이다. 원래 이런게 이렇게 간단한 거였나? 하는 생각이 자주 든다. 내가 너무 익숙한 코드만 가지고 개발을 해 왔던것인지 아님 관심이 없었던 것인지... 이번에는 네비게이션 컨트롤의 네비게이션바를 숨기는 애니메이션 코드다. 간단하게 처리가 가능하니 응용해서 사용하면 좋을 것 같다. override func touchesEnded(_ touches: Set, with event: UIEvent?) { let bar = self.navigationController?.navigationBar; let ts = TimeInterval(0.3) UIView.animate(withDuration: ts) { bar?.alpha = ( bar?.alpha == 0 ? 1 : 0 ) } } 2018. 3. 6.
반응형