Swift
-
[DevDiary] 상반기 리뷰앱등이에게 살충제를 뿌린다./일기는 일기장에 2017. 7. 13. 13:02
상반기는 G프로젝트만을 진행했다.아직 오픈은 하지 않았고, 8월 중 오픈 예정이다.프로젝트를 하며 경험한 것들을 기록해본다. 1. 간단 에디터 구현.ImagePickerController를 사용하지 않고 Photos Framework를 사용하여 커스텀 Picker를 구현할 수 있었다.카메라 또한 AVCaptureSession을 사용하여 커스텀으로 구현할 수 있었다. Photos framework http://rhammer.tistory.com/229AVCaptureSession http://rhammer.tistory.com/231 2. Push, Pop, Present, Dismiss 커스텀 트랜지션 구현 Custom Transition http://rhammer.tistory.com/259 3. Co..
-
[DevDiary] Custom Transition & CoreAnimation앱등이에게 살충제를 뿌린다./일기는 일기장에 2017. 6. 24. 10:08
막바지에 다다르고 있는 프로젝트에서 UI Animation을 많이 경험할 수 있었다.사내에 Animation를 통해 UX/UI를 연구하는 부서가 있다보니 디테일한 요구사항이 많았고, 굉장히 이쁜 결과물을 얻을 수 있었다. 1. Push/Pop/Present 애니메이션처음에는 굉장히 어려워 보였지만, UIViewControllerAnimatedTransitioning를 Implement하는 방법을 안다면 어떤 트랜지션효과도 무섭지가 않다. Present를 위한 트랜지션은 func animationControllerForPresentedController(presented: UIViewController, presentingController presenting: UIViewController, source..
-
[CALayer] CAScrollLayer에 대해서 알아보자.앱등이에게 살충제를 뿌린다./iOS 2017. 6. 6. 23:46
예제에 사용된 앱 : https://itunes.apple.com/us/app/layer-player/id949768742?mt=8예제에 사용된 소스 : https://github.com/scotteg/LayerPlayer원문 : https://www.raywenderlich.com/90488/calayer-in-ios-with-swift-10-examples CAScrollLayer는 스크롤가능한 Layer를 표현합니다. CAScrollLayer는 간단한 편이고, 사용자의 터치나 제스쳐에 다이렉트로 respond할 수 없습니다. 그렇다면 UIScrollView의 layer는 CAScrollLayer타입일까? 라는 의문이 생길 수 있는데요. 그건 아닙니다. UIScrollView는 CALayer의 bou..
-
[CAShapeLayer] CAShapeLayer에 CAAnimation 추가하기앱등이에게 살충제를 뿌린다./iOS 2017. 5. 25. 01:22
CAShapeLayer클래스는 Bezier곡선을 그리기 위한 CALayer의 서브클래스다. Bezier는 곡선을 그리는 알고리즘이다. 그게 끝이다. ㄷㅓ 몰라도 된다. 베지어 곡선: 정말 말 그대로 곡선을 그리는 알고리즘 이 베지어 곡선을 CAShapeLayer로 생성할 때, Animation을 추가하지 않으면 다 그려진 모습으로 화면에 뿌려지겠지만, CAAnimation을 추가하면 화면에 그려지는 효과를 나타내어 애니메이션을 제공할 수 있다. CAAnimation을 추가하지 않은 CAShapeLayer CAAnimation을 추가한 CAShapeLayer 그럼 위 예제를 구현하기 위해 CAAnimation을 추가하는 과정을 코드로 살펴보자. CALayer의 transform에서는 UIView와 달리 3..
-
[iOS] 얼굴인식을 위한 CIDetect를 알아보자.앱등이에게 살충제를 뿌린다./iOS 2017. 4. 10. 13:00
UIImage에 사람의 얼굴이 있다면 이를 Detect하는 것이 가능합니다. 다른 오픈 소스나 엔진을 통한 것이 아닌 Apple의 SDK에서 제공하고 있습니다. 바로 CIDetect라는 클래스를 통해서 제공하고 있는데요. 사용법은 간단합니다. CIDetect클래스를 만들어서 이미지 객체를 전달하면 이미지상에 있는 얼굴의 좌표를 리턴해줍니다. 예제 소스만 첨부하고 총총총~ 이 코드를 사용한 앱 (feat. 아이린)
-
[iOS/Swift/AVFoundation] 카메라를 붙이며 알게된 것, + 알아볼 것앱등이에게 살충제를 뿌린다./일기는 일기장에 2017. 3. 16. 16:47
한개의 AVCaptureSession은 여러개의 Connection, input, output으로 구성된다.input은 카메라, 마이크 등이 될 것이고output은 video프리뷰나, 파일 등이 될 것이다. Connection은 1 or more input과 1개의 output으로 구성된다.즉, 카메라-video프리뷰의 pair 또는 카메라-파일 등의 pair가 될 것이다. input은 AVCaptureInput, output은 AVCaptureOutput클래스의 객체고 session에 addInput / addOutput으로 추가할 수 있다.session은 startSession / stopSession으로 on/off가능하다. AVCaptureVideoPreviewLayer를 생성하여 SomeView..
-
Photos Framework를 이용하여 사진을 가져오자. 샘플코드앱등이에게 살충제를 뿌린다./iOS 2017. 3. 11. 23:14
http://rhammer.tistory.com/229에서 Photos 프레임워크의 주요 클래스들에 대한 이야기를 했습니다.하지만 샘플코드가 있어야 이해가 빠를듯 하여 샘플코드를 작성해보았습니다. 이 샘플코드를 작동시키기 위해서 필요한 조건은 아래와 같습니다.1. XCode8, Swift32. 새 프로젝트를 만들면 스토리보드의 Initial ViewController가 UIViewController로 되어있죠? 이 친구를 UICollectionViewController로 바꿔주세요.3. 새롭게 만든 UICollectionViewController의 Cell은 ImageCell이라는 클래스로 바꿔주시고, 셀에는 이미지뷰를 추가하여 아래 샘플코드의 IBOutlet으로 연결해주세요.4. Privacy - Ph..