पर टाइप किया जाता है तो मैं एक मैसेन्गिंग एप्लिकेशन बना रहा हूं और जब मैं एंड्रॉइड पक्ष से इमोजी भेजता हूं, तो यह आईओएस पक्ष पर ठीक दिखाता है, फिर भी आईओएस पक्ष आईओएस के अपने कीबोर्ड से इमोजी प्रदर्शित नहीं कर सकता है (ऐसा लगता है)!आईओएस कीबोर्ड का उपयोग करते समय इमोजी एनएसएट्रिब्यूटेड स्ट्रिंग में नहीं दिखता है, जब एंड्रॉइड
जिस लेबल में मैं इमोजी दिखा रहा हूं वह जिम्मेदार पाठ का उपयोग करता है और पाठ HTML से आता है। निम्नलिखित कोड यह एंड्रॉयड पक्ष बिल्कुल ठीक पर प्रदर्शित करता है,, NSAttributedString
var msg = getTextForDisplay()//Essentially gets the plain text
msg = "<span style=\"font-family: Helvetica; font-size:14pt;\">" + msg + "</span>"
if let data = msg.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false){
let attributed = try? NSAttributedString(data: data, options: [ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType ], documentAttributes: nil)
return attributed
}
यहां तक कि अजनबी उत्पन्न करने के लिए जब मैं आईओएस से इमोजी भेज सकते हैं जैसा कि ऊपर वर्णित है, हालांकि यह लेबल में प्रदर्शित नहीं करता है प्रयोग किया जाता है। आईओएस ओर, वह लेबल में, यह पता चलता है कि jibberish प्रतीत होता है
जैसे (यूनिकोड chasracters शायद?):
मैं बिल्कुल यकीन है कि त्रुटि इमोजी के प्रदर्शित, क्योंकि जब मुद्रित के साथ है कर रहा हूँ कंसोल करने के लिए, मैं असली इमोजी देखता हूं और डिवाइस स्टोरेज में सहेजा जाता है और बाद में मैक पर पढ़ता हूं, यह असली इमोजी है। लेकिन जब इमोजी को जिम्मेदार लेबल में लोड किया जाता है, तो यह जिबर्निश
किसी भी मदद की सराहना करता है। मैं समझता हूं कि समस्या एन्कोडिंग के साथ कुछ करने के लिए है, मुझे यकीन नहीं है कि वास्तव में समस्या क्या है और इसे कैसे ठीक किया जाए
भी 'getTextForDisplay' समारोह साझा करें कुछ चीजें के बहुत सारे है। जो विभिन्न पाठ प्रारूपों में/से कनवर्ट करते समय गलत हो सकता है, खासकर यदि आप JSON का उपयोग कर गुजर रहे हैं। – Ben
@Ben यह सचमुच एक स्ट्रिंग के साथ स्ट्रिंग देता है ऐन टेक्स्ट, उदाहरण के लिए "हैलो" –
बस एक हार्डकोडेड स्ट्रिंग, या कहीं और से आयात की गई स्ट्रिंग? – Ben