У меня есть рабочий код, в котором я копирую изображение в UIPasteboard, но я не могу найти способ программно реализовать функциональность PASTE. Любая идея или совет?
Как программно вставить изображение с помощью Swift?
Ответы (3)
Следующий фрагмент кода может работать. Убедитесь, что вы проводите тестирование на устройстве.
let image = UIImage(named: "person.png")
UIPasteboard.generalPasteboard().image = image;
на основе комментария вы можете сделать это следующим образом. Я помещаю здесь код Objective-C, надеюсь, вы поняли идею, а затем конвертируете его в Swift.
NSData* pasteData = [[UIPasteboard generalPasteboard] dataForPasteboardType:(NSString*)kUTTypeJPEG];
вы можете найти быстрое решение по следующему адресу: Swift UIPasteboard не копирует PNG
person
casillas
schedule
16.03.2016
Этот код позволяет мне вставить изображение только в UIPasteboard, мне нужно вставить из UIPasteboard. Я не хочу просить пользователя вставить его вручную.
- person Carlos; 16.03.2016
Касильяс, не могли бы вы сказать мне, является ли эта строчка правильным переводом слова «свифт»? var pasteData: NSData = UIPsteboard.generalPasteboard().dataForPasteboardType(String(kUTTypeJPEG))
- person Carlos; 17.03.2016
В качестве альтернативы вы можете использовать NSData. На Симуляторе тоже работает.
// Copy
let image = UIImage(named: "sample")
let imageData = UIImageJPEGRepresentation(image!, 1)
UIPasteboard.general.setData(imageData!, forPasteboardType: "image")
// Paste
let imageData = UIPasteboard.general.data(forPasteboardType: "image")
let image = UIImage(data:imageData!)
copiedImage.image = image
person
Stanley Yong
schedule
13.01.2017
Свифт 3
Если изображение было скопировано из другого приложения (например, Safari), я добавляю его в свое приложение именно так. Я запускаю это из UIAlertController как UIAlertAction.
let pasteboard = UIPasteboard.general
if pasteboard.hasImages {
myImage.image = pasteboard.image
}
person
Steve Thoonen
schedule
11.03.2017