2013-04-08 3 views
5

पर एनएसएसटींग मैं कस्टम स्माइलीज़ (छवियों) के साथ पाठ दिखाने के लिए यूआईवेब्यूव्यू में एनएसएसटींग दिखा रहा हूं लेकिन मुझे परेशानी हो रही है क्योंकि UIWebview विशेष पात्रों जैसे \ n, \ r, \ t, सफेद जगहों का पता लगाने में सक्षम नहीं है, &, <,> और स्ट्रिंग के कई और। UIWebView में लोड करने के लिए एनएसएसटींग से HTML स्ट्रिंग को कैसे परिवर्तित करें?एचटीएमएल

+0

तुम बस तार के HTML टैग के साथ पूरी बात लिख सकते हैं .. इसके बजाय .. – iphonic

+0

स्ट्रिंग static.It चर नहीं है तो मैं लिखने के लिए है: यहाँ NSString के लिए एक वर्ग यह आसान बनाता है अलगो इसे HTML –

+0

में परिवर्तित करने के लिए और भी बहुत कुछ? आप किस अन्य नियंत्रण पात्रों की बात कर रहे हैं? –

उत्तर

3

इसके लिए कोई समाधान नहीं बनाया गया है। आपको HTML इकाइयों को एन्कोड करना होगा। NSString-HTML नामक एक ओपन-सोर्स प्रोजेक्ट है जो आपकी आवश्यकताओं के अनुरूप हो सकता है।

एक अच्छी एनएसएसटींग श्रेणी here भी है, जो Google's Toolbox पर आधारित है।

+1

पहली लाइब्रेरी समस्या का समाधान नहीं करती है लेकिन यह 2 की तरह दिखती है लाइब्रेरी मेरी समस्या का समाधान कर सकती है। मैंने इस प्रश्न को पोस्ट करने से पहले उस लाइब्रेरी को पहले ही देखा है, लेकिन मेरी रुचि –

+1

की विधि को नहीं समझ सका, आपको शायद 'stringByEncodingHTMLEntities'' और 'stringWithNewLinesAsBRs') में रुचि हो सकती है। –

0

क्या आपने HTML स्ट्रिंग को UTF8 प्रारूप में परिवर्तित करने का प्रयास किया है और फिर इसे वेब दृश्य में लोड किया है?

[webView loadData:[html dataUsingEncoding:NSUTF8StringEncoding] 
        MIMEType:@\"text/html\" 
      textEncodingName:@\"UTF-8\" 
         baseURL:nil]; 
+0

मुझे समझ में नहीं आया –

+0

कोई आश्चर्य नहीं कि आप समझ में नहीं आए !! क्षमा करें मैं गलत तरीके से सवाल समझ गया। अगर मैं कुछ प्राप्त करता हूं तो मैं त्वरित खोज करता हूं और जवाब संपादित करता हूं। –

+0

@ शुभम देखें कि यह मदद करता है .. क्षमा करें .. :) –

0

आप आईसीयू परिवर्तन की तलाश में हैं। यह कार्यक्षमता CFString API फ़ंक्शन CFStringTransform() में कनवर्ट किया गया है ट्रांसफ़ॉर्म विकल्प का उपयोग करना कोई भी हेक्स आप केवल उन ग्लाइफों का एनएससीएचएआरएटरसेट बनाकर ऑप्टिमाइज़ करना चाहते हैं जिन्हें बचने की आवश्यकता है।

1

वास्तव में इसके लिए एक समाधान में बनाया गया है ... एनएसएट्रिब्यूटेड स्ट्रिंग में।

@interface NSString (HTMLString) 
- (NSString *)HTMLString; 
@end 

@implementation NSString (HTMLString) 
- (NSString *)HTMLString { 
    NSDictionary * const exportParams = @{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType}; 
    NSAttributedString *attributed = [[NSAttributedString alloc] initWithString:self]; 
    NSData *htmlData = [attributed dataFromRange:NSMakeRange(0, attributed.length) documentAttributes:exportParams error:nil]; 
    return [[NSString alloc] initWithData:htmlData encoding:NSUTF8StringEncoding]; 
} 
@end