2009-09-20 11 views
7

यूआईएसक्रॉल व्यू में एक छवि को केंद्रित करने के लिए एक वर्कअराउंड बनाने के प्रयास में और इसे ऐप्पल के फोटो ऐप के रूप में व्यवहार करने के प्रयास में, मुझे वर्तमान ज़ूम स्तर प्राप्त करने और प्रत्येक ज़ूम पर छवि को इन्सेट करने की मात्रा की गणना करने के लिए संख्या का उपयोग करने की आवश्यकता है स्तर।मैं UIScrollView में वर्तमान ज़ूम स्तर कैसे प्राप्त कर सकता हूं?

(नोट: मुझे पता है कि कुछ प्रोग्रामर एक यूवीव्यू में छवि को केंद्रित करके स्क्रॉलव्यू में एक छवि केंद्रित कर रहे हैं जो स्क्रॉलव्यू के समान आकार है। यह अच्छे नतीजे नहीं देता है और मैं यह पता लगाने की कोशिश कर रहा हूं कि कैसे सेब ने इसे फोटो ऐप में काम किया।)

तो, किसी को भी पता है कि UIScrollView में सामग्री के वर्तमान ज़ूम स्तर को कैसे प्राप्त किया जाए?

उत्तर

9

ओएस 3.x में, "ज़ूमस्केले" नामक एक संपत्ति है जो आपको वह देगी जो आपको चाहिए। 2.x में, मेरा मानना ​​है कि आप सीधे सामग्री पर देख सकते हैं इसे देखने के लिए व्यू का रूपांतरण (लेकिन यह निश्चित रूप से 'आधिकारिक' नहीं है।)

+0

मैं कोशिश कर रहा हूं: एनएसएलओजी (@ "% डी", myScrollView.zoomScale); मेरे scrollViewDidEndZooming विधि में, लेकिन यह केवल "0" हो रहा है। मुझसे यहां क्या गलत हो रहा है? मुझे पता है कि आप ज़ूमस्केले को एक सेटर के रूप में उपयोग कर सकते हैं, लेकिन वर्तमान ज़ूम स्केल पाने के लिए भी काम करता है? – Jonah

13

हाँ मुझे आपकी समस्या का जवाब मिला। मुझे लगता है कि आपको इस विधि का उपयोग अपने scrollViewController क्लास में करना चाहिए।

- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale{ 
    NSLog(@"Zoomscale %f",scale); 
     NSLog(@"Zoom End!"); 
} 
संबंधित मुद्दे