본문 바로가기

IOS

SwiftUI - YoutubeKitPlayer

간만에 SwiftUI로 돌아왔습니다..

SwiftUI 상에서 YoutubePlayer를 적용할수 있는 라이브러리를 찾아 소개 드립니다.


1. 라이브러리 추가

   1-1. Xcode File -> Add Packages.. 클릭 

 

   1-2. 우측 상단에 해당 URL 를 입력후 Add Package

https://github.com/SvenTiigi/YouTubePlayerKit.git

 

이어서 추가......

2. 소스 추가

 

import SwiftUI
import YouTubePlayerKit

struct ContentView: View {
    
    var youtubeId = [ YouTubePlayer(stringLiteral: "https://www.youtube.com/watch?v=w87fOAG8fjk"),
                    YouTubePlayer(stringLiteral: "https://www.youtube.com/watch?v=_p8AsQhaVKI"),
                    YouTubePlayer(stringLiteral: "https://www.youtube.com/watch?v=n5jXg_NNiCA"),
                    YouTubePlayer(stringLiteral: "https://www.youtube.com/watch?v=oaqHdULqet0"),
                    YouTubePlayer(stringLiteral: "https://www.youtube.com/watch?v=UThGcWBIMpU")
                ]
    
    var body: some View {
        
        VStack(spacing: 10) {
            ScrollView {
                ForEach(Array(youtubeId.enumerated()), id: \.offset) {
                    indea, item in
                    Button(
                        action: {
                            for i in 0..<youtubeId.count {
                                if item != youtubeId[i] {
                                    youtubeId[i].pause()
                                }
                            }
                        }, label: {
                            YouTubePlayerView(item)
                                .frame(width: 200, height: 200)
                        })
                    
                }
            }
        }
    }
}

이렇게 간단한 코드로 5개의 뷰를 만들었습니다, 해당 뷰에서 영상이 겹쳐서 재생 될수 있기 때문에 정지하는 로직을 추가합니다.

해당 영상을 틀고 modal 로 덮어 씌울경우에 영상이 계속 켜지기 때문에 처리시에 해당 영상을 Stop 처리 해야 합니다.

 

아래의 URL상에 더 많은 내용이 있습니다!


참고 

https://github.com/SvenTiigi/YouTubePlayerKit

 

GitHub - SvenTiigi/YouTubePlayerKit: A Swift Package to easily play YouTube videos 📺

A Swift Package to easily play YouTube videos 📺. Contribute to SvenTiigi/YouTubePlayerKit development by creating an account on GitHub.

github.com

 

'IOS' 카테고리의 다른 글

Xcode 관련 오류를 쌓아보자.  (0) 2021.12.26
Swift - Firebase Dynamic Link  (0) 2021.11.27
Swift - TextView PlaceHolder  (0) 2021.08.26
Swift - Combine VS RxSwift  (0) 2021.08.21
Swift - UITableView + ListClick  (0) 2021.08.13