Симулятор не имеет камеры и не может имитировать, чтобы сделать снимок (было бы неплохо использовать isight, но Apple не была так любезна).Однако ваш код не является безопасным, потому что, например, у старого ipod touch нет камеры, и в этом случае ваше приложение будет зависать на этом устройстве.
Чтобы использовать контроллер средства выбора изображений, содержащий его элементы управления по умолчанию, выполните следующие действия:
1. Убедитесь, что устройство способно выбирать контент из нужного источника.Сделайте это, вызывая метод isSourceTypeAvailable: class, предоставляя константу из перечисления «UIImagePickerControllerSourceType».
2.Проверьте, какие типы носителей доступны для используемого вами типа источника, вызвав availableMediaTypesForSourceType.: метод класса.Это позволяет различать камеру, которая может использоваться для записи видео, и камеру, которая может использоваться только для неподвижных изображений.
3. С помощью контроллера средства выбора изображения настройте пользовательский интерфейс в соответствии с типами носителей, которые вы хотите использовать.сделать доступными - неподвижные изображения, фильмы или и то и другое - установив свойство mediaTypes.
4.Представьте пользовательский интерфейс, вызвав presentModalViewController: animated: метод текущего активного контроллера представления, передавая настроенный контроллер средства выбора изображений.в качестве нового контроллера представления.
5. Когда пользователь нажимает кнопку, чтобы выбрать вновь захваченное или сохраненное изображение или фильм, или отменяет операцию, закрывает средство выбора изображений с помощью объекта делегата.Для вновь захваченных носителей ваш делегат может затем сохранить его в Camera Roll на устройстве.Для ранее сохраненных носителей ваш делегат может затем использовать данные изображения в соответствии с назначением вашего приложения.