Я использую Xcode 10, swift 5. У меня есть tableViewController, который позволяет пользователю нажимать, проводить пальцем влево и вправо. Когда проведите пальцем вправо, появится ведущая кнопка с надписью «завершено». Когда пользователь нажимает кнопку, появляется диалоговое окно для обмена и позволяет ему поделиться работой. Я изо всех сил пытаюсь реализовать UIPickerController, который позволяет пользователю сфотографировать свой проект и встроить его в диалоговое окно обмена.
override func tableView(_ tableView: UITableView, leadingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
let complete = UIContextualAction.init(style: .normal, title: "Complete") { (action, view, completion) in
let completedTxt = "Look at what I fixed, thanks to @DIY Home Repair!"
let vc = UIImagePickerController()
vc.sourceType = .camera
vc.allowsEditing = false
vc.delegate = self
self.present(vc, animated: true)
let activityController = UIActivityViewController(activityItems: [completedTxt, ], applicationActivities: nil)
self.present(activityController, animated: true, completion: nil)
completion(true) // Completion
}
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
picker.dismiss(animated: true)
guard let image = info[.originalImage] as? UIImage else {
print("No image found")
return
}
// print out the image size as a test
print(image.size)
}
}
Код отображает камеру и позволяет пользователю сделать снимок, но картинка не уходит, и диалоговое окно обмена не появляется. Когда я удаляю код для UIPickerController, появляется диалоговое окно с предварительно заполненным текстом.