【Swift】ImagePicker로 카메라 롤에서 사진을 선택하여 표시

8525 단어 XcodeiOSSwift

머리



Xcode12.4의 Swift를 사용한 iOS 앱 개발에서 이전 Xcode와 다른 경우가 많았기 때문에 설명

카메라 롤을 표시하는 버튼 설정


  • 오른쪽 상단의 + 버튼을 클릭하여 개체 목록을 표시합니다.
  • Navigation Bar와 Bar Button Item을 선택하여 Storyboard에 추가


  • 추가 후 스토리 보드


    스토리보드에서 내비게이션 바의 제목과 버튼 이름 설정
  • Navigation Item의 Title: 이미지 표시

  • Bar Item의 Title: 추가


  • 그런 다음 버튼의 동작 연결 설정
  • ViewController 열기
  • control 키를 누른 상태에서 Storyboard의 Bar Button Item을 ViewController의 viewDidLoad 메서드 아래에 추가합니다 (Name : buttonClick로 설정).


  • 클래스에 UIImagePickerControllerDelegate 및 UINavigationControllerDelegate 추가
  • class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
    
  • 버튼을 클릭했을 때의 움직임을 설정한다
  • 아래 ViewController buttonClick 메서드
  • // ボタンをクリックした時
        @IBAction func buttonClick(_ sender: Any) {
            // カメラロール表示
            let imagePickerController = UIImagePickerController()
            imagePickerController.sourceType = .photoLibrary
            imagePickerController.delegate = self
            imagePickerController.mediaTypes = ["public.image"]
            present(imagePickerController,animated: true,completion: nil)
        }
    
  • 위에서 추가한 imagePickerController 를 설정한다
  • imagePickerController에서 카메라 롤에서받은 이미지를 배경으로 설정
  • 아래 ViewController imagePickerController 메서드
  • // カメラロール表示
        func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
    
            let widthSize = UIScreen.main.bounds.size.width // 画面の横の大きさを取得
            let heightSize = UIScreen.main.bounds.size.height // 画面の縦の大きさを取得
            let imageViewBackground = UIImageView(frame: CGRect(x: 0, y: 0, width: widthSize, height: heightSize)) // 背景画像の大きさを設定
            imageViewBackground.image = (info[.originalImage] as! UIImage) // カメラロールから受け取った画像を設定
            self.view.addSubview(imageViewBackground) // 背景画像を追加する
    
            picker.dismiss(animated: true)
        }
    

    실행 후

    버튼을 클릭한 후

    사진 선택 후


    PHPicker를 사용하여 카메라 롤을 표시하기 전에 권한 확인



    PHPicker를 사용하기 때문에 쓰기 방법이 바뀌기 때문에 여기에 기재
    PHPicker로 카메라 롤에서 사진을 선택하고 표시

    이번에는 여기까지!

    관련 기사



    1. Swift로 스토리보드 작업
    2.Storyboard에 UI 부품 설치
    3. 화면 전환을 수행
    4. 화면에 이미지를 표시하는 방법
    5.ImagePicker로 카메라 롤에서 사진을 선택하여 표시합니다(본 기사)
    6. PHPicker로 카메라 롤에서 사진을 선택하고 표시

    좋은 웹페이지 즐겨찾기