2011-07-07 16 views
47

समृद्ध टेक्स्ट देखने में सक्षम होने के लिए मैं एक HTML स्ट्रिंग को UIWebView में लोड कर रहा हूं। अब तक सब ठीक है. लेकिन मेरे पास एक छोटी सी समस्या है: मेरी निब फ़ाइल में, मैंने पृष्ठभूमि विशेषता को हरे रंग में सेट किया है। हालांकि, जब यह प्रदर्शित होता है, पृष्ठभूमि सफेद होती है। फिर, कक्षा फ़ाइल में, मैंने निम्नलिखितUIWebView पृष्ठभूमि रंग

[myWebView setBackgroundColor:[UIColor greenColor]]; 
    [myWebView loadHTMLString:myString baseURL:nil]; 

हालांकि, पृष्ठभूमि अभी भी सफेद है। मैंने ऑर्डर को उलट करने का भी प्रयास किया, लेकिन फिर भी सफेद पृष्ठभूमि आ गई।

UIWebView के आकार की तुलना में अधिक टेक्स्ट है। मैंने देखा कि जब मैं पाठ के अंत में नीचे स्क्रॉल करता हूं, तब पृष्ठभूमि हरा होती है। पाठ के लिए पृष्ठभूमि को हरा होने के लिए मैं पृष्ठभूमि कैसे प्राप्त करूं?

क्या आप कृपया मुझे सलाह दे सकते हैं कि मैं क्या गलत कर रहा हूं? बहुत सराहना की।

उत्तर

116

सीएसएस मार्कअप का उपयोग कर अपने एचटीएमएल में पृष्ठभूमि रंग सेट करें।

या, NO को वेबव्यू केopaque गुण सेट .. और हरे रंग के नीचे देखने की पृष्ठभूमि निर्धारित किया है।

UIWebView स्वयं पृष्ठभूमि रंग को समझने के लिए प्रतीत नहीं होते हैं - क्योंकि वे दस्तावेज़ प्रस्तुत कर रहे हैं।

+5

हाँ, you1 मैं नहीं करने के लिए अपारदर्शी सेटिंग जोड़ी का शुक्र है, और अब यह एकदम सही है । – Namhcir

+0

लेकिन एक और सवाल - मुझे पूर्व दृश्य में तालिकादृश्य की तालिकादृश्य कक्षों में समृद्ध दृश्य प्रदर्शित करने की भी आवश्यकता है। यदि मैं tableviewcell में कोई वेबव्यू जोड़ता हूं तो क्या मुझे परेशानी होगी? अन्यथा, मैं टेबलव्यू में समृद्ध एचटीएमएल कैसे प्रदर्शित करूं? – Namhcir

+0

चूंकि वे सभी uiviews हैं, आप इसे जोड़ने से दूर हो सकते हैं। लेकिन आपको ऐप्पल के कुछ एचआईजी और यूआईटीबल व्यू एपीआई संदर्भ की समीक्षा करनी चाहिए। UITableCellView को ओवरराइड करने और पृष्ठभूमि को पारदर्शी बनाने के बारे में कई अपमानजनक चेतावनियां हैं। – Kal

23

उपयोग यह आपके कोड के लिए एक अतिरिक्त

[myWebView setBackgroundColor:[UIColor greenColor]]; 
[myWebView setOpaque:NO]; 
[myWebView loadHTMLString:myString baseURL:nil]; 
+1

अंतिम पंक्ति चाल थी लेकिन myString के बजाय मैंने शून्य लिखा था। तब मैंने अपना वास्तविक पृष्ठ लोड किया। धन्यवाद! – Segev

7
webView.opaque = NO; 
webView.backgroundColor = [UIColor clearColor]; 
+1

यह स्वीकार्य उत्तर होना चाहिए क्योंकि यह रंग साफ़ करने के लिए वेबव्यू पृष्ठभूमि रंग सेट करने के साथ काम नहीं करेगा। –

2

Xcode8 में परीक्षण किया गया और स्विफ्ट 3

self.webView.isOpaque = false; 
self.webView.backgroundColor = UIColor.clear 
संबंधित मुद्दे