안녕하세요! 이번 글에서는 저번글에 이어 사진 앱을 만들어볼 건데요, 이번에는 저번에 만든 사진 앱에서 조금 아쉬운 점을 수정해보려고 합니다. 저번에 구현한 화면을 보여드리며 이번에 수정할 아쉬운 점을 살펴보겠습니다! 이번에 수정할 아쉬운 점은 사진이 선택됐을 때 선택되었다는 것을 알 수 있게 이벤트를 주는 것과 휴지통 버튼이 아무것도 선택되지 않았을 때부터 활성화되어있는 것을 고쳐보도록 할게요. 우선 사진이 선택되었을 때 이벤트를 주는 작업부터 진행하겠습니다. 저희가 사용한 컬렉션 뷰의 델리게이트에는 셀이 선택되거나 선택 해제 되었을 때를 감지할 수 있는 메서드들이 있습니다. 이러한 메서드를 사용하여 다양한 작업을 할 수 있는데요, 이번에 할 작업들도 이를 활용하면 될 것 같습니다. 아 참고로 지금까지..
안녕하세요 ^~^ 이번 글에서는 저번 글에 이어 사진첩의 사진을 삭제해보려고 합니다. 물론 이번에도 스토리보드는 사용하지 않을 거예요. 우선 저번 글에서 구현한 마지막 모습을 보고 진행하도록 하겠습니다. 그럼 이제 여기서 사진을 삭제할 수 있도록 만들어볼까요? 우선 Photos 프레임워크에서 사진이 삭제되었다는 것을 알기 위해서는 PHPhotoLibraryChangeObserver 프로토콜을 채택해야 합니다. 근데 이렇게 하면 위의 사진처럼 오류가 발생하는데요 이는 추가한 프로토콜에 필요한 메서드를 정의하지 않았기 때문입니다. 이러한 메서드를 추가해주시면 추가한 프로토콜이 잘 작동됩니다. 참고로 추가한 메서드는 이름만 봐도 알 수 있지만 포토라이브러리의 변화를 관찰하는 옵저버입니다. 즉 이번에 저희가 사..
지난 글에 이어 이번 글에서는 아이폰에 저장되어있는 사진들로 컬렉션 뷰를 채워보는 작업을 해보도록 하겠습니다. 이렇게 iOS에서 사진이나 비디오들을 다루기 위해선 PhotoKit을 사용해야 합니다. 여기서 간단하게 iOS의 Photos 프레임워크가 사진과 동영상을 취급하는 모습을 그림으로 나타내 보겠습니다. 위의 그림과 같이 iOS의 사진과 비디오는 3 계층으로 되어있는데 간단하게 말하면 Asset과 Asset을 모은 Asset Collection, Asset Collection을 모은 Collection List로 구성됩니다. Asset은 사진이나 비디오 파일을 말하며 Asset Collection은 앨범이나 사진 폴더라고 보면 쉽습니다. 그리고 이러한 폴더들을 모아둔 것이 Collection List..
내가 만든 앱에서 스마트폰에 저장된 사진과 비디오를 사용하고 싶을 때 사용하는 라이브러리입니다. 직접 사용하는 방법은 여기에서 참고하면 됩니다~ 공식 문서 Apple Developer Document - PhotoKit PhotoKit iCloud Photos, Live Photos를 포함하여 Photos 앱에서 관리하는 이미지 및 비디오 에셋으로 작업할 수 있게 해 준다. Overview iOS 및 macOS에서 PhotoKit은 사집 앱에서 사진 편집 기능을 지원하는 클래스를 제공한다. iOS, macOS, tvOS에서 PhotoKit은 사진 앱에서 관리하는 사진, 비디오 에셋에 직접 접근할 수 있다. 위의 그림과 같이 PhotoKit을 사용하면 보여주거나 재생을 위해 비디오나 이미지를 가져오고 이들..
- Total
- Today
- Yesterday
- 앱개발
- DP
- operating
- 스위프트
- OSTEP
- OS
- 자료구조
- Publisher
- 백준
- Xcode
- 문법
- 테이블뷰
- Swift
- 알고리즘
- 코딩테스트
- 코테
- Combine
- 아이폰
- operator
- Apple
- IOS
- BFS
- document
- 프로그래밍
- System
- design
- 동시성
- mac
- pattern
- dfs
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |