Я работаю с контроллером MPMediaPickerController.Подождите до выбора медиа в iPhone
Прямо сейчас я могу выбрать элемент из галереи, используя следующий код:
MPMediaPickerController *controller = [[MPMediaPickerController alloc]initWithMediaTypes:MPMediaTypeAnyAudio];
controller.delegate = mediaDelegate._pickerDelegate;
[self presentViewController:controller animated:YES completion:nil];
NSLog(@"url :%@",singleton.url);
Намерение состоит в том, что мой метод должен возвращать URL выбранного элемента. Вместо этого я получаю null
для URL-адреса, потому что строка ниже текущего контроллера представления вызывается, как только отображается контроллер представления (он не ждет выбора элемента).
Есть ли способ остановить после presentViewController
, для выбора элемента, а затем вернуть URL выбранного элемента из метода?
У меня уже есть этот способ. Но прежде чем я выберу этот метод, элемент управления вернется из верхнего метода, из которого я звоню. [Self presentViewController: контроллер анимированный: ДА завершение: nil]; и, следовательно, я получаю нулевой url – user3057042
Я не думаю, что вы понимаете, как работает делегат. Вам нужно подождать, пока пользователь выберет это, и делегат будет вызван, вы не сможете остановить запуск вашей программы, чтобы ждать выбора. –