2012-06-26 31 views
5

मैं एक UIView CGAffineTransformScale का उपयोग करने में ज़ूम करने के लिए एक समारोह में लिखा था। 2x ज़ूम-इन के बाद, सभी टेक्स्ट वास्तव में धुंधला दिखता है। छवियां ठीक हैं अगर वे शुरू करने के लिए उच्च रिज़ॉल्यूशन में हैं। ज़ूम इन करने के बाद उचित समाधान में सभी पाठ को फिर से प्रस्तुत करने का कोई तरीका है?आईओएस पाठ प्रतिपादन के बाद से ज़ूम-इन

संपादित करें: मैं अपने समस्या का आंशिक समाधान नहीं मिला: http://markpospesel.wordpress.com/2012/04/03/on-the-importance-of-setting-contentscalefactor-in-catiledlayer-backed-views/

  • (शून्य) didMoveToWindow { self.contentScaleFactor = 2.0; }

एक UIView श्रेणी में उपरोक्त विधि को जोड़ कर, UILabel, UIButton और अधिकांश अन्य विचारों अब उच्च संकल्प में प्रस्तुत करना। हालांकि, यह UITextView या UIWebView को प्रभावित नहीं करता है। इन दो विचारों में से किसी के भीतर पाठ अभी भी अस्पष्ट है।

इसलिए नए सवाल, कैसे एक UITextView या उच्च संकल्प पर जूम-इन के बाद दोबारा बनाई जा UIWebView सकता है?

उत्तर

7

हां। आप अपने UIView पर contentScaleFactor सेट कर सकते हैं ताकि इसे उच्च रिज़ॉल्यूशन पर बैकिंग व्यू प्रस्तुत किया जा सके। रेटिना उपकरणों पर सावधान, हालांकि; आप यह सुनिश्चित करना चाहते हैं कि आपका नया contentScaleFactor कम से कम [[UIScreen mainScreen] scale] है। (मैं इसे आपके एनीमेशन से पहले सेट कर दूंगा ताकि यह चिकनी हो।)

संपादित करें: स्पष्ट होने के लिए, आपको शायद अपने 2x ज़ूम उदाहरण में [[UIScreen mainScreen] scale] * 2 पर टेक्स्ट व्यू के contentScaleFactor सेट करने की आवश्यकता है।

+0

आप के लिए धन्यवाद जवाब। मैं अभी भी उलझन में हूँ। क्या मुझे मूल दृश्य या सबव्यू की सामग्रीस्केल फैक्टर सेट करना चाहिए? मैंने पैरेंट व्यू को सेट करने का प्रयास किया, यह काम नहीं किया। यदि वह काम नहीं किया था, प्रत्यक्ष subviews की स्थापना या तो subview अभी भी अपनी ancenster माना जाता है काम नहीं होता है, के बाद से पाठ के साथ वास्तविक दृश्य, दृश्य पदानुक्रम में गहरी हो सकता है,। –

+0

आप क्योंकि यह उन विचारों कि पिक्सल के लिए पाठ की वास्तविक रेंडरिंग की है, खुद को देखता है, दुर्भाग्य से, पदानुक्रम में जो कुछ जगह वे रहते हैं पर (गहरी) पाठ पर इस सेट करना होगा। –

+0

धन्यवाद जेसी! वास्तव में बहुत मदद की। –