2016-09-28 2 views
1

Я хочу, чтобы мой код делился снимком экрана при нажатии кнопки с именем share.Контроллер активности для совместного использования снимков экрана отображает пустой

Функция кнопки выглядит следующим образом:

Swift 3

func shareBtnAction(_ sender: AnyObject) { 

// first I take a screenshot of the drawing  
     UIGraphicsBeginImageContext(drawingAreaView.bounds.size) 
     drawingAreaView.image?.draw(in: CGRect(x: 0, y: 0, width: drawingAreaView.frame.size.width, height: drawingAreaView.frame.size.height)) 

// defining the variable for activityItems 
     let image = UIGraphicsGetImageFromCurrentImageContext() 
     UIGraphicsEndImageContext() 

// Initialize and present UIActivityViewController   
     let activity = UIActivityViewController(activityItems: [image], applicationActivities: nil) 
     present(activity, animated: true, completion: nil) 
    } 

Результат, однако выглядит следующим образом:

enter image description here

Мой код работает, когда я заменить изображение с текстовой строкой

func shareBtnAction(_ sender: AnyObject) { 

// defining the variable for activityItems 
     let text = "This is a test" 

// Initialize and present UIActivityViewController   
     let activity = UIActivityViewController(activityItems: [text], applicationActivities: nil) 
     present(activity, animated: true, completion: nil) 
    } 

Так что, я думаю, мой код не распознает изображение как UIImage. Я просто не могу понять, почему.

ответ

2

Я понял, скор 3 хочет инициализировать UIGraphicsGetImageFromCurrentImageContext более конкретно как тип UIImage:

let image: UIImage = UIGraphicsGetImageFromCurrentImageContext()! 
Смежные вопросы