iOS: Custom keyboard: I want to send images to the textDocumentProxy(Input controls)

旧巷老猫 提交于 2019-11-30 02:31:06

Following is the code for the copy image into pasteboard

NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://warp.povusers.org/images/test.png"]];
UIPasteboard *pasteBoard=[UIPasteboard generalPasteboard];
[pasteBoard setData:data forPasteboardType:@"public.png"];

Now the think is that create extension of custom keyboard in that layout you can put your UIButton and that button action implement above for png image.

For Local Image following code is help full to you and it's working in my case.

UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];
NSData *imgData = UIImagePNGRepresentation(@"Your UIImage Here");
[pasteboard setData:imgData forPasteboardType:[UIPasteboardTypeListImage objectAtIndex:0]];

More Uniform Type Identifiers you visit here and change Pasteboard Type.

May this help lot and solve your problem.

Edited

"Allow Full Access" From Settings -> Keyboard -> Keyboards -> select your app keyboard -> On switch of "Allow Full Access"

Please try in a device, you can test with iMessage App in a device. Default input views like UITextView and UITextField do not support the images. They only support the strings.

The following code will copy the image into the pasteboard.

let pb = UIPasteboard.generalPasteboard()
let image: UIImage = UIImage(named: imgArray[indexPath.row])!
let imgData: NSData = UIImagePNGRepresentation(image)!
pb.setData(imgData, forPasteboardType: kUTTypePNG as String)

And give "Allow Full Access" for keyboard in settings. And add the RequestsOpenAccess to YES in the info.plist file.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!