BOID

[iOS] 이미지 피커 컨트롤러의 델리게이트 메서드 - HoonIOS 본문

IOS 시작기

[iOS] 이미지 피커 컨트롤러의 델리게이트 메서드 - HoonIOS

HoonIOS 2021. 4. 23. 15:13

안녕하세요 HoonIOS입니다. :)

 

저번에는 이미지 피커 컨트롤러에 대해 포스팅을 했습니다.

boidevelop.tistory.com/68

 

[iOS] 이미지 피커 컨트롤러란?

안녕하세요, HoonIOS입니다. :) 이번에는 이미지 피커 컨트롤러라는 컨트롤러를 포스팅하려고 합니다. 단, iOS 14 이후부터는 PHPickerViewController를 사용합니다. 카메라는 이미지 피커 컨트롤러에서 사

boidevelop.tistory.com

이제는 이미지 피커 컨트롤러에 이벤트를 발생했을 때 수행하는 작업을 하는 이미지 피커 컨트롤러의 델리게이트 메서드에 대해 알아보겠습니다.

 

 이미지 피커 컨트롤러의 델리게이트 메서드 종류

 

델리게이트 메서드가 호출하는 메서드는 다음과 같습니다.

 

 

하나씩 차례대로 알아보겠습니다.

 

 imagePickerController(_:didFinishPickingMediaWithInfo:)

 

이 메서드는 이미지를 선택하거나 카메라 촬영이 완료됐을 때 호출되는 메서드입니다. 만약. allowEditing속성을 true로 줬으면 이미지 수정 작업이 완료된 후에 호출이 됩니다.

 

이 메서드의 첫번째 인자 값은 이 메서드를 호출하는 이미지 피커 컨트롤러 객체입니다. 하나의 뷰 컨트롤러에서 두 개 이상의 이미지 피커 컨트롤러를 사용할 경우 이 인자 값을 통해 구분할 수 있습니다.

 

두 번째 인자 값은 우리가 원하는 이미지 데이터입니다. 단순하게 선택한 이미지가 아닌 이미지 객체에 대한 종합 정보가 딕셔너리 형태로 전달되어 있어 적절한 키를 사용하면 원하는 정보를 얻을 수 있습니다.

(이것은 뒤에 예제에서 키를 통해 이미지를 불러올 때 설명을 하겠습니다.)

 

 

※ 위에 키들을 하나씩 알아보겠습니다.

  • .cropRect
    - 원본 이미지에 적용된 사각형으로 자르는것입니다.
  • .editedImage
    - 원본 이미지에 사용자가 편집한 이미지를 말하는것입니다.
  • .imageURL
    - 이미지 파일의 URL주소를 말하는것입니다.
  • .livePhoto
    - 선택된 사진이거나 캡쳐한 사진의 Live Photo표현입니다.
  • .mediaMetadata
    - 새로 캡처한 사진의 메타데이터 입니다.
  • .mediaType
    - 사용자에의해 선택된 미디어타입 입니다.
  • .mediaURL
    _ 영화의 파일시스템 URL입니다.
  • .originalImage
    - 사용에의해 선택된 편집된것이 아닌 날것 그대로의 사진 입니다.
  • .phAsset
    - 이미지의 사진 asset입니다.
  • .referenceURL
    - 선택된 아이템의 오리지날 버전을 위한 Asset Library URL입니다.

 

 imagePickerControllerDidCancel(_:)

 

이미지 아무것도 선택을 안 하고 그냥 취소했을 때 호출되는 메서드로 사용자에게 취소되었다고 알려주거나 이미지 피커 컨트롤러를 내리는. dismiss를 호출하는 메서드로 사용이 됩니다.

 

이 메서드는 사용자가 아무것도 선택하지 않고 cancel로 취소했을 경우 감지를 하고 취소를 합니다.

 

 

 

이제 이미지 피커 컨트롤러의 델리게이트 메서드 2개를 설명했으니 이제 구현을 해봐야겠죠?

 

다음 포스팅에서 한번 구현해보겠습니다. :)

 

 

반응형
Comments