2017-02-12 2 views
-1

버튼을 누를 때 사용자의 음악 라이브러리를 표시 한 다음 노래를 선택할 수 있도록하기 위해 간단히 이해하려고합니다. 나는 이것을하는 방법이 MPMediaPickerController을 통해다는 것을 것을을 발견했다 그러나 나는 그것이 작동하기 위하여 고투하고있다.swift 3에서 MPMedaPickerController를 사용하는 방법은 무엇입니까?

import MediaPlayer 
import UIKit 

class ViewController: UIViewController, MPMediaPickerControllerDelegate { 
var mediaPicker: MPMediaPickerController? 


override func viewDidLoad() { 
    super.viewDidLoad() 

} 

@IBAction func showSongs(_ sender: Any) { 
    displayMediaPicker() 
} 
func displayMediaPicker() { 
    mediaPicker = MPMediaPickerController(mediaTypes: .music) 
    if let picker = mediaPicker { 
     picker.delegate = self 
     picker.allowsPickingMultipleItems = false 
     picker.showsCloudItems = false 
     picker.prompt = "Please Pick a Song" 
     view.addSubview(picker.view) 
     } 
} 

} 

, 내가 [self presentViewController:picker animated: true completion:nil]view.addSubview(picker.view) 후 속성이있을 것을 알고,하지만 난 그것을 입력 할 때 내가 옵션 presentingViewController & presentedViewContoller을 가지고 있지만 presentViewController

모든 : 이것은 내 프로그램은 지금까지 모습입니다 도움을 많이 주신다면

답변

2

기능이

로 변경되었습니다.

present(viewControllerToPresent: UIViewController, animated: Bool, completion: (() -> Void)?)

따라서, 귀하의 경우이 같은 presentPicker 기능을보고 뭔가 (마지막 줄을 알)로 끝날 것 : 당신을 도와줍니다

func presentPicker() { 
    mediaPicker = MPMediaPickerController(mediaTypes: .music) 
    if let picker = mediaPicker { 
     picker.delegate = self 
     picker.allowsPickingMultipleItems = false 
     picker.showsCloudItems = false 
     picker.prompt = "Please Pick a Song" 
     present(picker, animated: false, completion: nil) 
    } 
} 

희망을.

관련 문제