2015-04-03 11 views
5

पर छवियां भेजना चाहता हूं, मैं केवल छवियों के साथ कस्टम कीबोर्ड को कार्यान्वित कर रहा हूं और छवि के क्लिक पर टेक्स्टव्यू जैसे टेक्स्ट डॉक्यूमेंटप्रोक्सी/इनपुट कंट्रोल पर छवियां भेजना चाहता हूं लेकिन इसे प्राप्त नहीं करना चाहता हूं। अब तक मैं इनपुट नियंत्रण में टेक्स्ट/स्ट्रिंग भेजने में सक्षम हूं लेकिन छवियों पर नहीं।आईओएस: कस्टम कीबोर्ड: मैं textDocumentProxy (इनपुट नियंत्रण)

क्या इनपुट नियंत्रण में छवियां भेजना संभव है?

किसी भी सुझाव या समाधान की अत्यधिक सराहना की जाती है।

+0

क्या आपको यह करने के लिए कोई समाधान मिला? – Ramakrishna

+0

अभी तक दोस्त नहीं है ... यह परियोजना अभी पकड़ पर है। –

उत्तर

8

के बाद अब लगता है कि है कि लेआउट में कस्टम कुंजीपटल का एक्सटेंशन बनाने के आप अपने UIButton डाल सकते हैं और उस बटन कार्रवाई छवि png के लिए ऊपर लागू है pasteboard

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

में प्रति छवि के लिए कोड है।

स्थानीय छवि के लिए निम्नलिखित कोड आपकी मदद करने में मदद करता है और यह मेरे मामले में काम कर रहा है।

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

अधिक Uniform Type Identifiers you visit here और पेस्टबोर्ड प्रकार बदलें।

इससे मदद मिल सकती है और आपकी समस्या का समाधान हो सकता है।

संपादित

सेटिंग "पूर्ण पहुँच की अनुमति" -> कीबोर्ड -> कीबोर्ड -> अपना ऐप कीबोर्ड का चयन -> "पूर्ण पहुँच की अनुमति दें"

+0

फिर आप इस छवि को उस टेक्स्टफील्ड में कैसे पेस्ट करते हैं जिसे उपयोगकर्ता वर्तमान में संपादित कर रहा है? – smacdonald

+0

आप बस किसी भी ऐप पर जाते हैं और लंबे प्रेस विकल्प पर पेस्ट –

+1

पेस्ट दिखाता है। तो उपयोगकर्ता को इसे पेस्ट करना है। मैं उम्मीद कर रहा था कि इसे स्वचालित रूप से करने का एक तरीका था। – smacdonald

1

एक डिवाइस में करने का प्रयास करें के स्विच पर, आप किसी डिवाइस में iMessage ऐप के साथ परीक्षण कर सकते हैं। UITextView और UITextField जैसे डिफ़ॉल्ट इनपुट दृश्य छवियों का समर्थन नहीं करते हैं। वे केवल तारों का समर्थन करते हैं।

निम्न कोड छवि को पेस्टबोर्ड में कॉपी करेगा।

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

और सेटिंग्स में कीबोर्ड के लिए "पूर्ण पहुंच की अनुमति दें" दें। और info.plist फ़ाइल में RequestsOpenAccess को YES में जोड़ें।

संबंधित मुद्दे